zoukankan      html  css  js  c++  java
  • 爬取简书页面Python(selenium)

    1. 简书的文章页面主要包括    标题  文章  图片  评论  作者信息

    2. 其中的作者信息和图片有一点特别, 应该都是JS加载的, 所以我没多想,直接selenium走起

    3. 图片的URL地址是懒加载出来的所以我在网页找了一部分代码, 实现页面间断拖动, 直到网页底部,以免selenium直接拖到底部,加载不出图片

    4. 用下面的代码可以获取这个页面的完整内容啦, 再使用 soup 或者 lxml 提取数据就好了

    def get_page(url):
        bro = webdriver.Chrome('./chromedriver.exe')    # 加载工具
        bro.get(url)
    
        scroll_to_bottom(bro)       # 滚动加载
        page_text = bro.page_source
        return page_text
    
        # 滚动加载
    def scroll_to_bottom(driver):
        # driver.execute_script("window.scrollTo(0,document.body.scrollHeight);")   滑动到页面底部
        js = "return action=document.body.scrollHeight"     # 获取总高度
        # 初始化现在滚动条所在高度为0
        height = 0
        # 当前窗口总高度
        new_height = driver.execute_script(js)
    
        while height < new_height:
            # 将滚动条调整至页面底部
            for i in range(height, new_height, 300):
                driver.execute_script('window.scrollTo(0, {})'.format(i))
                time.sleep(0.2)
            height = new_height
            time.sleep(1)
            new_height = driver.execute_script(js)
  • 相关阅读:
    垃圾回收机制_合集
    线程_同步应用
    动态给类的实例对象 或 类 添加属性
    【Python】画一个心形
    【JS】网站运行时间
    【Python】random库
    【HTML】iframe嵌套界面自适应,可高度自由收缩
    【HTML】三种方法使HTML单页面输入密码才能访问
    维护
    投喂记录
  • 原文地址:https://www.cnblogs.com/MasonHu/p/13189150.html
Copyright © 2011-2022 走看看