分享

selenium_通过selenium控制浏览器滚动条

 梦寒与锁梦 2019-04-03

目的:通过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)
  • 经验:通过二哥指导,要学会拆解问题,明白原理后,应该将查找问题的重点放在js上,而不是依然固守思维。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多