python中的selenium如何实现自动向下滚动页面并指定最大滑动距离
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章给大家分享的是有关python中的selenium如何实现自动向下滚动页面并指定最大滑动距离的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。需要selenium控制的
千家信息网最后更新 2025年01月19日python中的selenium如何实现自动向下滚动页面并指定最大滑动距离
这篇文章给大家分享的是有关python中的selenium如何实现自动向下滚动页面并指定最大滑动距离的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
需要selenium控制的chrome向下滑动,自动加载一些内容,核心代码是:
browser.execute_script("window.scrollBy(0,300)")
这行可以向下滑动300个像素
需要的工具函数如下:
def roll_window_to_bottom(browser, stop_length=None, step_length=500): """selenium 滚动当前页面,向下滑 :param browser: selenium的webdriver :param stop_length: 滑动的最大值 :param step_length: 每次滑动的值 """ original_top = 0 while True: # 循环向下滑动 if stop_length: if stop_length - step_length < 0: browser.execute_script("window.scrollBy(0,{})".format(stop_length)) break stop_length -= step_length browser.execute_script("window.scrollBy(0,{})".format(step_length)) time.sleep(0.5 + random.random()) # 停顿一下 check_height = browser.execute_script( "return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;") if check_height == original_top: # 判断滑动后距顶部的距离与滑动前距顶部的距离 break original_top = check_height
使用示例:
from selenium import webdriverimport timeimport randomdef roll_window_to_bottom(browser, stop_length=None, step_length=500): """selenium 滚动当前页面,向下滑 :param browser: selenium的webdriver :param stop_length: 滑动的最大值 :param step_length: 每次滑动的值 """ original_top = 0 while True: # 循环向下滑动 if stop_length: if stop_length - step_length < 0: browser.execute_script("window.scrollBy(0,{})".format(stop_length)) break stop_length -= step_length browser.execute_script("window.scrollBy(0,{})".format(step_length)) time.sleep(0.5 + random.random()) # 停顿一下 check_height = browser.execute_script( "return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;") if check_height == original_top: # 判断滑动后距顶部的距离与滑动前距顶部的距离 break original_top = check_heightdef main(): option = webdriver.ChromeOptions() option.add_argument('lang=zh_CN.UTF-8') # 设置 browser = webdriver.Chrome(chrome_options=option, desired_capabilities={"page_load_strategy": "none"}) browser.get("http://news.baidu.com/") roll_window_to_bottom(browser, stop_length=700)if __name__ == '__main__': main()
感谢各位的阅读!关于"python中的selenium如何实现自动向下滚动页面并指定最大滑动距离"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
最大
页面
顶部
内容
更多
最大值
篇文章
循环
不错
实用
代码
像素
函数
工具
文章
核心
看吧
知识
示例
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
设置服务器策略有什么用
战地一服务器断线主机
店达网络技术有限公司
软件开发公司的人工成本
电子口岸服务器
腾讯云服务器高危漏洞怎么处理
河南信息化软件开发价格优惠
sql服务器停止
数据库中交差并选择什么意思
苏州游戏软件开发定做价格
三亚应该软件开发方案
通信网络技术公司
戴尔r420服务器尺寸
apex服务器人少
新华三 通信软件开发面试
满隆网络技术
网络安全手抄报内容高中
苏州仪器软件开发公司哪家好
网络安全入门github
手机银行app软件开发难吗
徐州企业软件开发价钱
档案员网络安全
提交审核功能数据库
软件开发及服务的收入确认
广州高匠互联网科技有限公司
国家网络安全宣传周 新闻
深圳苹果手机软件开发哪家公司好
金融服务器哪个国家好
app企业管理软件开发
超凡先锋两个服务器可以同时玩吗