前言
selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要Window对象。
常见场景:
当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的。
这时候需要借助滚动条来拖动屏幕,使被操作的元素显示在当前的屏幕上。
滚动条是无法直接使用工具来定位的。selenium里面也没有直接的方法去控制滚动条,
这时候可以使用Window对象的scrollTo()方法,scrollTo()方法可把内容滚动到指定的坐标。
scrollTo(xpos,ypos)
xpos:必需。要在窗口文档显示区左上角显示的文档的x坐标。
ypos:必需。要在窗口文档显示区左上角显示的文档的y坐标。
一、scrollTo函数
scrollHeight 获取对象的滚动高度。
scrollLeft 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离。
scrollTop 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离。
scrollWidth 获取对象的滚动宽度。
#滚动到底部
js="window.scrollTo(0,document.body.scrollHeight)" browser.execute_script(js)
#滚动到顶部
#滚动到顶部 # jst="window.scrollTo(0,0)" jst="window.scrollTo(0,document.body.scrollTop)" browser.execute_script(jst)
Selenium3+python3自动化(十五)--JS处理滚动条
原文:https://www.cnblogs.com/canglongdao/p/13583745.html