【发布时间】:2016-12-27 02:08:31
【问题描述】:
当我通过 Chrome 手动导航到站点后查看源 HTML 时,我可以看到完整的页面源,但是通过 selenium 加载页面源时,我没有获得完整的页面源。
from bs4 import BeautifulSoup
from selenium import webdriver
import sys,time
driver = webdriver.Chrome(executable_path=r"C:\Python27\Scripts\chromedriver.exe")
driver.get('http://www.magicbricks.com/')
driver.find_element_by_id("buyTab").click()
time.sleep(5)
driver.find_element_by_id("keyword").send_keys("Navi Mumbai")
time.sleep(5)
driver.find_element_by_id("btnPropertySearch").click()
time.sleep(30)
content = driver.page_source.encode('utf-8').strip()
soup = BeautifulSoup(content,"lxml")
print soup.prettify()
【问题讨论】:
-
你能用webdriver添加你错过的页面源吗?
-
您是否尝试在
driver.get('http://www.magicbricks.com/')行之后添加time.sleep(5)或其他任意时间?可能是页面加载速度不够快,您正在寻找的组件不可用。 -
另外,我注意到该网站在您开始使用时会出现一个弹出窗口。由于这个弹出窗口,我不得不点击两次“btnPropertySearch”按钮。我能够看到所有的源代码。你能详细说明你看不到的东西吗?
标签: python selenium selenium-webdriver bs4