Selenium - 元素操作(2) - 页面滚动条
Selenium - 元素操作
函数滚动
一般元素定位,元素如果不在浏览器的可视位置(即可见只是不在可视位置),会自动把元素滚动到可视位置,但也有不会自己滚动的(比较少)。
- 那我们就可以用selenium的
location_once_scrolled_into_view就可以滚动到某个元素处,也就是滚动直到这个元素出现在屏幕里。
# 获取页面元素
element = driver.find_element_by_id('kw') # 移动元素element对象,与当前窗口的中心对齐
## 不需要增加括号
element.location_once_scrolled_into_view
- 那我们就可以用selenium的
JS滚动
除了代码方式以外,也可以用
js来滚动窗口。五个常见方法:移动到元素 element对象的顶端 与 当前窗口的顶部对齐 :
# 获取页面元素
element = driver.find_element_by_id('kw') driver.execute_script("arguments[0].scrollIntoView();", element)
移动到元素 element对象 与 当前窗口的中心对齐:
element = driver.find_element_by_id('kw')
driver.execute_script("arguments[0].scrollIntoView({block:'center', inline:'center'});", element)
滚动到元素 element对象的底端 与 当前窗口的底部对齐:
element = driver.find_element_by_id('kw')
driver.execute_script("arguments[0].scrollIntoView(false);", element)
滚动到页面顶部:
driver.execute_script("window.scrollTo(0,0)")
滚动到页面底部:
driver.execute_script("window.scrollTo(0 ,document.body.scrollHeight)")
Selenium - 元素操作(2) - 页面滚动条的更多相关文章
- selenium怎么操作web页面常见的元素
总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box ...
- selenium元素操作
1.文本框(text field or textarea) element.sendKeys("test");//在输入框中输入内容: element.clear(); //将输入 ...
- Java Selenium - 元素操作 (二)
一篇概括了常用的元素定位方法,但是找到元素还是不够的,模拟鼠标的操作,完成各个功能点的自动操作才是关键. 下面是常见的页面元素操作会涉及到的方法,不是很全,比较复杂的后面单独拿出来做案例. 一, 输入 ...
- Java Selenium - 元素操作 (四)
四,弹出框 京东购物车为例 , 点击‘删除’ 或者‘移到我的关注’ ,就会弹出下面这个框框,练吧: (其实这也不是常规的弹出框,二是div css前端技术做的效果,本想做个Alert的案例,实在不好找 ...
- Java Selenium - 元素操作 (三)
接上一篇,我们依然以京东的网站做示例. 三,单选项 下面来做这样一条case: 1. 登录京东旅行网页. 2. 在国内机票板块,购买从北京到武汉的往返机票,时间为明天出发,一周后返回. 3.搜索机票. ...
- Selenium元素定位之页面检测技巧
我们在进行web自动化测试的时候进行XPath或者CSS定位,需要检测页面元素定位是否正确,如果用脚本去检测,那么效率是极低的. 一般网上推选装额外的插件来实现页面元素定位检测 如:firebug. ...
- Web自动化必会知识:「Web基础、元素定位、元素操作、Selenium运行原理、项目实战+框架」
1.web 基础-html.dom 对象.js 基本语法 Dom 对象里面涉及元素定位以及对元素的修改.因为对元素操作当中涉及的一些 js 操作,js 基本语法要会用.得要掌握前端的基本用法.为什么要 ...
- java selenium (九) 常见web UI 元素操作 及API使用
本篇介绍我们如何利用selenium 来操作各种页面元素 阅读目录 链接(link) <div> <p>链接 link</p> <a href=" ...
- Python selenium webdriver设置js操作页面滚动条
js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...
- python3 + selenium 使用 JS操作页面滚动条
js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...
随机推荐
- 统一观测丨使用 Prometheus 监控 E-MapReduce,我们该关注哪些指标?
作者:闻洪 开源大数据平台E-MapReduce(简称"EMR")是云原生开源大数据平台,向客户提供简单易集成的Hadoop.Hive.Spark.Flink.Presto.Cli ...
- ISCC 2022 RE
ISCC 2022 RE 练武题 Amy's Code v9=[0]*20 v9[0] = 149 v9[1] = 169 v9[2] = 137 v9[3] = 134 v9[4] = 212 v9 ...
- Java面试——MyBatis
一.MyBatis 与 JDBC 的区别 [1]JDBC 是 Java 提供操作数据库的 API:MyBatis 是一个持久层 ORM 框架,底层是对 JDBC 的封装.[2]使用 JDBC 需要连接 ...
- StringBuilder 导致堆内存溢出
StringBuilder 导致堆内存溢出 原始问题描述: Exception in thread "main" java.lang.OutOfMemoryError: Java ...
- Java 内存模型(二)
Java 内存模型(二) happens-before JSR-133 提出了 happens-before 的概念,通过这个概念来阐述操作之间的内存可见性.如果一个操作执行的结果需要对另一个操作 ...
- react中登录注册 使用验证码验证
后端接口 var express = require('express'); var router = express.Router(); var User = require('./../sql/c ...
- 开源不到 48 小时获 35k star 的推荐算法「GitHub 热点速览」
本周的热点除了 GPT 各类衍生品之外,还多了一个被马斯克预告过.在愚人节开源出来的推特推荐算法,开源不到 2 天就有了 35k+ 的 star,有意思的是,除了推荐算法本身之外,阅读源码的工程师们甚 ...
- 最新版本 Stable Diffusion 开源 AI 绘画工具之使用篇
目录 界面参数 采样器 文生图(txt2img) 图生图(img2img) 模型下载 界面参数 在使用 Stable Diffusion 开源 AI 绘画之前,需要了解一下绘画的界面和一些参数的意义 ...
- python入门教程之十九cgi编程
什么是CGI CGI 目前由NCSA维护,NCSA定义CGI如下: CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP服务器,提供同客户 ...
- [网络]公共网络安全漏洞库: CVE / CNCVE
本文博主的经历与该博文处理绿盟科技安全评估的系统漏洞 - 博客园的经历相同: 处理[第三方网络安全公司]给[公司产品]的[客户的服务器]扫描后生成的[安全漏洞报告]. 1 前言 以网络安全行业中最大的 ...