博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
轻松自动化---selenium-webdriver(python) (十一)
阅读量:5743 次
发布时间:2019-06-18

本文共 958 字,大约阅读时间需要 3 分钟。

本节重点:

  •   控制滚动条到底部

 

有时候我们需要控制页面滚动条上的滚动条,但滚动条并非页面上的元素,这个时候就需要借助js是来进行操作。一般用到操作滚动条的会两个场景:

  • 注册时的法律条文需要阅读,判断用户是否阅读的标准是:滚动条是否拉到最下方。
  • 要操作的页面元素不在吸视范围,无法进行操作,需要拖动滚动条

 

其实,实现这个功能只要一行代码,但由于不懂js ,所以花了不小力气找到这种方法。

 

用于标识滚动条位置的代码

 

如果滚动条在最上方的话,scrollTop=0 ,那么要想使用滚动条在最可下方,可以scrollTop=100000 ,这样就可以使滚动条在最下方。

 

 

场景一

先来解决场第一个问题,法律条款是一个内嵌窗口,通过firebug工具可以定位到内嵌入窗口可以定位到元素的id ,可以通过下面的代码实现。

js="var q=document.getElementById('id').scrollTop=10000"driver.execute_script(js)

注:由于没找到合适的例子,所没验证,从参考资料来看这种写法应该没问题,如有请反馈。

 

 

场景二

有滚动条的页面到处可见,这个就比较容易找例子,我们以操作百度搜索结果页为例:

#coding=utf-8from selenium import webdriverimport 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()

转载地址:http://vtszx.baihongyu.com/

你可能感兴趣的文章
组策略 之 设备安装设置
查看>>
人工智能还能干这些?这8种AI应用你可能意想不到
查看>>
实现Hyper-V 虚拟机在不同架构的处理器间迁移
查看>>
简单使用saltstack
查看>>
针对web服务器容灾自动切换方案
查看>>
突破媒体转码效率壁垒 阿里云首推倍速转码
查看>>
容器存储中那些潜在的挑战和机遇
查看>>
R语言的三种聚类方法
查看>>
55%受访企业将物联网战略视为有效竞争手段
查看>>
深入理解Python中的ThreadLocal变量(上)
查看>>
如果一切即服务,为什么需要数据中心?
查看>>
《游戏开发物理学(第2版)》一导读
查看>>
Erlang简史(翻译)
查看>>
深入实践Spring Boot2.4.2 节点和关系实体建模
查看>>
信息可视化的经典案例:伦敦地铁线路图
查看>>
10个巨大的科学难题需要大数据解决方案
查看>>
Setting Up a Kerberos server (with Debian/Ubuntu)
查看>>
用 ThreadLocal 管理用户session
查看>>
setprecision后是要四舍五入吗?
查看>>
shiro初步 shiro授权
查看>>