通过selenium控制浏览器滚动条

目的:通过selenium控制浏览器滚动条
原理:通过 driver.execute_script()执行js代码,达到目的

     driver.execute_script("window.scrollBy(0,1000)")
语法:scrollBy(x,y)

参数	描述
x	必需。向右滚动的像素值。
y	必需。向下滚动的像素值。
或者用

      driver.execute_script("window.scrollTo(0,1000)")
语法:scrollBy(x,y)

参数	描述
x	必需。必需。要在窗口文档显示区左上角显示的文档的 x 坐标。
y	必需。必需。要在窗口文档显示区左上角显示的文档的 y 坐标。
配合chrome插件能快速找到位置:page ruler 

问题总结:
为了达到目的我想到了2种方法:
1.网上大多是拿到浏览器滚动条的js代码,然后执行,不知道为什么我这亲测没有成功;

   js="var q=document.documentElement.scrollTop=10000"
   driver.execute_script(js)
2.通过模拟键盘的形式去滚动屏幕,也没成功,也许是我对这个用法还不熟练

 driver.find_element_by_css_selector('.fadeInUp.animated').send_keys(Keys.DOWN)

  

原文地址:https://www.cnblogs.com/zhangdingqu/p/9364883.html