• Python3利用Chrome的--headless爬取动态页面内容(推荐)


    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');
  • 相关阅读:
    函数对象中的prototype属性
    undefined和null的区别
    访问修饰符
    继承
    静态成员和实例成员的区别
    js模拟Trim()方法
    连接池的执行原理
    Javascript中的= =(等于)与= = =(全等于)区别
    数据库中创建约束
    KM算法入门
  • 原文地址:https://www.cnblogs.com/lizm166/p/13877515.html
Copyright © 2020-2023  润新知