博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
selenium之 如何控制网页内嵌div中滚动条的滚动
阅读量:2159 次
发布时间:2019-05-01

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

项目过程当中遇到操作滚动条问题:

这里是浏览器内嵌的横向滚动条,页面有2个TAB,

 

这里主要是操作TAB2里面的横向滚动条,下图可以看出class= el-table__body-wrapper is-scrolling-left

2个tab 那么操作第2个tab ,横向滚动到右侧,代码如下

js = 'document.getElementsByClassName("el-table__body-wrapper is-scrolling-left")[1].scrollLeft=10000' self.driver.execute_script(js)

实际要根据你页面情况变动,如果你要操作时,滚动条位置发生了变化,假设tab2的 横向滚动条右移动了,这时候

class =el-table__body-wrapper is-scrolling-middle

那么操作这个tab2的滚动条就是

js = 'document.getElementsByClassName("el-table__body-wrapper is-scrolling-middle")[0].scrollLeft=10000' self.driver.execute_script(js)# 这里有2个变化,下标变成0了,因为第一个页面还是left,所有这里是0# 第二个是使用新的class名称

 

 

很多人疑惑怎么用selenium控制网页div中滚动条的滚动,其实这个问题很简单,用JS很简单就可以实现。 

示例HTML代码如下:

overflow:scroll

You can use the overflow property when you want to have better control of the layout. The default value is visible.aaaaaaaaaaaaaaaaaaaaaaaaaaaa

接下来我们用JS来控制里面的滚动条滚动:

from selenium import webdriverdr=webdriver.Firefox()dr.get('file:///D:/1.html')js='document.getElementsByClassName("scroll")[0].scrollTop=10000' # 就是这么简单,修改这个元素的scrollTop就可以dr.execute_script(js)

当然,我们能做更多:

document.getElementsByClassName("scroll")[0].scrollHeight # 获取滚动条高度

document.getElementsByClassName("scroll")[0].scrollWidth # 获取横向滚动条宽度
document.getElementsByClassName("scroll")[0].scrollLeft=xxx # 控制横向滚动条位置

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

你可能感兴趣的文章
【托业】【新东方全真模拟】03~04-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST05~06-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST09~10-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST07~08-----P5~6
查看>>
solver及其配置
查看>>
JAVA多线程之volatile 与 synchronized 的比较
查看>>
Java集合框架知识梳理
查看>>
笔试题(一)—— java基础
查看>>
Redis学习笔记(三)—— 使用redis客户端连接windows和linux下的redis并解决无法连接redis的问题
查看>>
Intellij IDEA使用(一)—— 安装Intellij IDEA(ideaIU-2017.2.3)并完成Intellij IDEA的简单配置
查看>>
Intellij IDEA使用(二)—— 在Intellij IDEA中配置JDK(SDK)
查看>>
Intellij IDEA使用(三)——在Intellij IDEA中配置Tomcat服务器
查看>>
Intellij IDEA使用(四)—— 使用Intellij IDEA创建静态的web(HTML)项目
查看>>
Intellij IDEA使用(五)—— Intellij IDEA在使用中的一些其他常用功能或常用配置收集
查看>>
Intellij IDEA使用(六)—— 使用Intellij IDEA创建Java项目并配置jar包
查看>>
Eclipse使用(十)—— 使用Eclipse创建简单的Maven Java项目
查看>>
Eclipse使用(十一)—— 使用Eclipse创建简单的Maven JavaWeb项目
查看>>
Intellij IDEA使用(十三)—— 在Intellij IDEA中配置Maven
查看>>
面试题 —— 关于main方法的十个面试题
查看>>
集成测试(一)—— 使用PHP页面请求Spring项目的Java接口数据
查看>>