selenium之滚动鼠标滑动页面

这篇具有很好参考价值的文章主要介绍了selenium之滚动鼠标滑动页面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在浏览web网站时,经常需要进行滑动页面的操作。在selenium中,我们可以通过execute_script执行js语句实现页面滑动。

可以分为四种滑动的场景:滑动至底部、滑动至顶部、滑动至具体位置、滑动至目标元素可见

以百度搜索为例:

一、滑动至顶部

输入搜索内容后,点击百度一下,滑动页面至底部文章来源地址https://www.toymoban.com/news/detail-521989.html

from selenium import webdriver
import time
from selenium.webdriver.support.wait import WebDriverWait

driver = webdriver.Chrome()
driver.get('http://www.baidu.com')

# 等待元素出现,再执行操作
WebDriverWait(driver, 20).until(lambda driver:driver.find_element('id', 'kw')).send_keys('selenium')
WebDriverWait(driver, 20).until(lambda driver:driver.find_element('id', 'su')).click()

time.sleep(2)
# 模拟鼠标滚轮,滑动至页面底部
js = "window.scrollTo(0, document.body.scrollHeight)"
driver.execute_script(js)

二、滑动至顶部

time.sleep(2)
# 模拟鼠标滑动到顶部
js = "window.scrollTo(0,0)"
driver.execute_script(js)

三、滑动到具体位置

time.sleep(1)
js = "window.scrollTo(0, 500)"   # 向下滑动500个像素
driver.execute_script(js)
time.sleep(1)
js = "window.scrollTo(0, -500)"   # 向上滑动500个像素
driver.execute_script(js)

js = "window.scrollTo(500, 0)"   # 向右滑动500个像素
js = "window.scrollTo(-500, 0)"   # 向左滑动500个像素

四、滑动至目标元素可见

# 目标元素
ele = driver.find_element('xpath', '/html/body/div[1]/div[2]/div[6]/div/div/div[2]/div/div[1]/div/div[2]/div[3]/div[1]/div/a')
# 向下滚动至目标元素可见
js = "arguments[0].scrollIntoView();"
driver.execute_script(js, ele)
# 向上滚动至目标元素可见
js = "arguments[0].scrollIntoView(false);"
driver.execute_script(js, ele)

到了这里,关于selenium之滚动鼠标滑动页面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python之selenium库安装及用法(定位法、获取文本、文本框输入、鼠标点击、滑动滚动条)

    谷歌浏览器驱动下载地址:https://chromedriver.storage.googleapis.com/index.html 根据你电脑的谷歌浏览器版本,下载相应的就行。我下载的是110.0.5481.XX中的chromedriver_win32.zip 下载完成,解压将里面的chromedriver.exe放到你python安装路径的scripts文件夹中。 能打开百度网页说明安装成功 (一

    2023年04月27日
    浏览(51)
  • Selenium 自动滑动页面

    有写数据是需要把页面完全浏览才会出现,或者页面数据需要滑动对应的位置才会加载(图片等) 。在csdn找了一圈,没找的想要的。。  改变页面中滚动条距离顶部的距离 具体代码 测试这段代码 随便打开一个网站直接复制到控制台(注意滚动条)  测试成功 直接复制进行(idea会

    2024年02月05日
    浏览(37)
  • 自动化测试-web(弹窗/滚动条/鼠标/等待等操作)

    为什么要处理弹窗? 如果页面操作过程中,有弹窗出现,不处理,无法继续对页面操作。 弹窗类型: js原生弹窗: 警告框、输入框、提示框,这些必须处理 如何处理: 1)获取弹窗对象 2)点击同意或取消方法 alert 弹窗 :只有信息及确认按钮 confirm弹窗 :在alert弹窗基础上

    2024年04月15日
    浏览(42)
  • selenium自动化测试-鼠标键盘操作

    前面我们已经学完了8种定位方式和利用Firefox插件协助定位,学会了定位了,自动化就成功了一半。 但是我们好像只是定位,定位后的操作并不多,我们今天要系统的了解下鼠标键盘操作。 回顾下我们之前的简单操作: 1.click() 点击按钮 2.clear() 清除输入框 3.send_keys() 输入字

    2024年02月07日
    浏览(53)
  • Web自动化之Selenium-鼠标操作

    本文总结了Selenium常用的鼠标操作。  打开百度网站,点击首页的新闻。 WebDriver封装了一套鼠标操作的包, ●引入包:from selenium.webdriver.common.action_chains import ActionChains。 ●定位元素,存储到某个变量:ele = driver.find_element_by_×××(\\\'××\\\')。 ●固定写法:ActionChains(driver).click(e

    2024年02月11日
    浏览(42)
  • 【RPA开发】Selenium 实现网页自动化

    开发时有时会遇到网页爬取限制的情况,那么此时可以通过 Selenium 来解决这个问题,因为 Selenium 是模拟浏览器执行网页爬取,相比 Request/API 操作更安全,服务器会完全认为是用户在用浏览器进行操作,如此可以实现网页自动化操作,由于 Selenium 是完全模拟浏览器操作,因此

    2023年04月25日
    浏览(101)
  • Selenium 做 Web 自动化,鼠标当然也要自动化!

    我们在做 Web 自动化的时候,有时候页面的元素不需要我们点击,值需要把鼠标移动上去就能展示各种信息。这个时候我们可以通过操作鼠标来实现,接下来我们来讲一下使用 selenium 做 Web 自动化的时候如何来操作鼠标。鼠标操作,我们可以使用 selenium 的 ActionChains 类来实现

    2024年02月03日
    浏览(41)
  • Selenium基础:自动化你的网页交互!

    在构建Python爬虫的过程中,你可能会遇到需要与网页进行交互的情况,比如填充表单、点击按钮等。这时,Selenium库就成了你的有力工具。Selenium是一个强大的工具,能够模拟用户在网页上的各种操作。本篇博客将向你介绍Selenium的基础用法,以及如何在你的爬虫中使用Seleni

    2024年03月22日
    浏览(63)
  • Python Selenium网页自动化利器使用详解

    Selenium是一个自动化测试工具,主要用于模拟用户在Web应用程序中的交互操作。虽然它最初被设计用于自动化测试,但也被广泛用于网页数据抓取、网页自动化操作和网页测试。 首先,需要安装Selenium库。使用pip来安装Selenium: 1 pip install selenium 此外,需要下载并安装一个浏览

    2024年01月18日
    浏览(69)
  • selenium入门超详细教程——网页自动化操作

    Selenium是广泛使用的模拟浏览器运行的库,它是一个用于Web应用程序测试的工具。 Selenium测试直接运行在浏览器中,就像真正的用户在操作一样,并且支持大多数现代 Web 浏览器。下面就进入正式的学习阶段。 激活虚拟环境 通过pip安装 针对不同的浏览器,需要安装不同的驱动

    2024年02月03日
    浏览(100)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包