webdriver提供了操作浏览器的前进和后退的方法,但是对于浏览器公东条并没有提供相应的操作方法。于是就需要借助JavaScript来控制浏览器的滚动条。webdriver提供了execute_sript()方法来执行JavaScript代码。

一般必须使用滚动条的场景是:注册时的法律文件条文阅读。判断用户是否阅读完的标准是:滚动条是否拉倒页面底部。为了使操作更接近用户行为也会使用滚动条,例如用户操作的元素在页面的第二屏,一般用户不会对看不到的元素进行操作,那么需要现将滚动条拖动到页面的第二屏在进行操作。

window.scrollTo()方法用于设置浏览器窗口滚动条的水平和垂直位置。方法的第一个参数表示水平的左间距,第二个参数表示垂直的上边距。其代码如下

from selenium import webdriver
from time import sleep
import time
# 访问百度
driver = webdriver.Firefox ()
driver.get("http://www.baidu.com")
# 控制浏览器大小
driver.set_window_size(600,600)
# 收索
driver.find_element_by_id("kw").send_keys("你好")
driver.find_element_by_id("su").click()
time.sleep(2) # 通过javascript设置浏览器窗口的滚动条 注:window.scrollTo(水平滚动条的距离,垂直滚动条的距离)
js = "window.scrollTo(450,0);"
driver.execute_script(js)
time.sleep(5) driver.quit ()

  

更多参考的文章:https://blog.csdn.net/cxx654/article/details/79949366

可以多学习javascript的知识

最新文章

  1. 递归将Map里的字段名由驼峰转为下划线
  2. LeetCode "473. Matchsticks to Square"
  3. Ajax跨域访问
  4. Nginx反爬虫
  5. 原生JavaScript技巧大收集(11~20)-(终于又被我找到这篇文章了)
  6. JavaScript中的setTimeout和setInterval
  7. 最短路径—大话Dijkstra算法和Floyd算法
  8. Java I/O 文件加锁,压缩
  9. thinkphp模板调用函数用法
  10. 路由器to路由器
  11. Linux 下安裝 Java SE Development Kit(JDK)並配置環境變量
  12. cocoaPods的安装方法
  13. MySQL在高版本需要指明是否进行SSL连接问题
  14. CoreData归纳使用
  15. Java中的五种单例模式
  16. Retrofit 实现获取往里圆角图片,且传值到另一个页面
  17. 调试内核打印debugfs
  18. 手机端flex、字体设置、快速点击
  19. python 装饰器的缺点以及解决方法
  20. [Luogu4182][USACO18JAN]Lifeguards P[单调队列]

热门文章

  1. <JZOJ5906>传送门
  2. 良知VS野心,苹果为何要翻新手机?
  3. 4-CSS规范
  4. YOLO 论文阅读
  5. [红日安全]Web安全Day3 - CSRF实战攻防
  6. 基础又重要的浮动(float)
  7. JVM性能优化系列-(7) 深入了解性能优化
  8. Hexo站点Next主题添加google adsense广告
  9. 《第31天:JQuery - 轮播图》
  10. webpack安装问题