Python3利用Chrome的--headless爬取动态页面内容(推荐)
利用Chrome浏览器的--headless爬取页面的动态内容:
1,下载与浏览器匹配的chromdriver.exe,并将文件拷贝到python的Scripts的目录下(已配置环境变量path的);
2,示例:
from selenium import webdriver from selenium.webdriver.chrome.options import Options def getevfromtt(code): try: chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--headless') driver = webdriver.Chrome(chrome_options=chrome_options) driver.get("http://fund.eastmoney.com/" + code + ".html") driver.execute_script("window.scrollTo(0,document.body.scrollHeight);") #将页面拉到底部 ljkq_btn = driver.find_elements_by_class_name("ip_tips_btn")[0] if ljkq_btn is not None: ljkq_btn.find_element_by_tag_name("span").click() time.sleep(0.5) ev = driver.find_element_by_id("gz_gsz").text ev_change = driver.find_element_by_id("gz_gszzl").text if ev=="--": ev = 0.0000 driver.quit() logger.info("getevfromtt>>:获取成功") return ev, change_percent(ev_change) except BaseException as e: logger.info("getevfromtt>>:获取异常"+e) return "", "" if __name__ == "__main__": getevfromtt('340007');