webdriver控制浏览器滚动条 selenium_python
2015-09-04 23:51
671 查看
有时候web 页面上的元素并非直接可见的,就算把浏览器最大化,我们依然需要拖动滚动条才能看到想要操作的元素,这个时候就要控制页面滚动条的拖动,但滚动条并非页面上的元素,可以借助JavaScript是来完成操作。
一般用到操作滚动条的会两个场景:
注册时的法律条文的阅读,判断用户是否阅读完成的标准是:滚动条是否拉到最下方。
要操作的页面元素不在视觉范围,无法进行操作,需要拖动滚动条
用于标识滚动条位置的代码
如果滚动条在最上方的话,scrollTop=0 ,那么要想使用滚动条在最可下方,可以scrollTop=100000 ,这样就可以使滚动条在最下方
下面以百度页面为例:
一般用到操作滚动条的会两个场景:
注册时的法律条文的阅读,判断用户是否阅读完成的标准是:滚动条是否拉到最下方。
要操作的页面元素不在视觉范围,无法进行操作,需要拖动滚动条
用于标识滚动条位置的代码
<body onload= "document.body.scrollTop=0 "> <body onload= "document.body.scrollTop=100000 ">
如果滚动条在最上方的话,scrollTop=0 ,那么要想使用滚动条在最可下方,可以scrollTop=100000 ,这样就可以使滚动条在最下方
下面以百度页面为例:
#coding=utf-8 from selenium import webdriver import time #访问百度 driver=webdriver.Firefox() driver.get("http://www.baidu.com") #搜索 driver.find_element_by_id("kw").send_keys("selenium") driver.find_element_by_id("su").click() time.sleep(3) #将页面滚动条拖到底部 js="var q=document.documentElement.scrollTop=10000" driver.execute_script(js) time.sleep(3) #将滚动条移动到页面的顶部 js_="var q=document.documentElement.scrollTop=0" driver.execute_script(js_) time.sleep(3) driver.quit()
相关文章推荐
- Python注意事项
- 线程之间的通信
- 使用队列让线程同步
- Python使用条件变量保持线程同步
- Python简单线程同步
- Python线程的daemon属性
- Python线程的线程名
- Python线程isAlive方法
- [转]Python traceback
- Python初学(7)——Python中的作用域基础
- 【Python系列3】两个txt文件通过id进行关联
- python解释器快捷键
- Python语言编程学习资料(电子书+视频教程)下载汇总
- Python新手初学教程
- Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- wxpython初学者(一)
- python 爬虫获取网站信息(二)
- 3ds max maxscript python 入门--执行python的三种途径
- 3ds max maxscript python 入门--执行python的三种途径
- windows平台安装scrapy框架