zoukankan      html  css  js  c++  java
  • Python-爬虫-selenium 下拉刷新 到底部 并获取源码

     def parse():     
     browser = webdriver.Chrome() # 加载界面 browser.get(response.request.url) sleep(3) # 获取页面初始高度 js = "return action=document.body.scrollHeight" height = browser.execute_script(js) # 将滚动条调整至页面底部 browser.execute_script('window.scrollTo(0, document.body.scrollHeight)') sleep(5) # 定义初始时间戳(秒) t1 = int(time.time()) # 定义循环标识,用于终止while循环 status = True # 重试次数 num = 0 while status: # 获取当前时间戳(秒) t2 = int(time.time()) # 判断时间初始时间戳和当前时间戳相差是否大于30秒,小于30秒则下拉滚动条 if t2 - t1 < 30: new_height = browser.execute_script(js) if new_height > height: sleep(2) browser.execute_script('window.scrollTo(0, document.body.scrollHeight)') # 重置初始页面高度 height = new_height # 重置初始时间戳,重新计时 t1 = int(time.time()) elif num < 3: # 当超过30秒页面高度仍然没有更新时,进入重试逻辑,重试3次,每次等待30秒 sleep(3) num = num + 1 else: # 超时并超过重试次数,程序结束跳出循环,并认为页面已经加载完毕! print("滚动条已经处于页面最下方!") status = False # 滚动条调整至页面顶部 browser.execute_script('window.scrollTo(0, 0)') break sleep(3) # 打印页面源码 driver = browser.page_source print(driver)
  • 相关阅读:
    开源项目中标准文件命名和实践
    linux远程拷贝命令-scp
    Linux访问Windows共享目录的方法——smbclient
    ADB Fix error : insufficient permissions for device
    APT典型应用示例
    我的参考书籍列表
    GCC Reference
    GNU make简介
    Windows下搭建Android NDK开发环境及命令行编译
    Git命令行基本操作
  • 原文地址:https://www.cnblogs.com/ZH-YC/p/14430062.html
Copyright © 2011-2022 走看看