【Python_Selenium学习笔记(五)】基于Selenium模块实现鼠标操作

这篇具有很好参考价值的文章主要介绍了【Python_Selenium学习笔记(五)】基于Selenium模块实现鼠标操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基于Selenium模块实现鼠标操作

前言

为了模拟鼠标操作,Selenium 模块提供了 Actionchains 类,可以模仿人的几乎任何鼠标行为操作;
在此篇文章主要介绍 Actionchains类 的常用方法,使用流程,并以具体的示例进行展示。

正文

1、Actionchains类常用方法

  1. perform():执行ActionChains中存储的行为;
  2. context_click(on_element=None):点击鼠标右键;
  3. double_click(on_element=None):双击鼠标左键;
  4. move_to_element(to_element):悬停,鼠标移动到某个元素;
  5. drag_and_drop(source, target):模拟鼠标拖动动作,选定拖动源元素释放到目标元素后鼠标松开;
  6. click_and_hold(on_element=None) :点击鼠标左键,不松开;
  7. move_by_offset(xoffset=0, yoffset=0):鼠标从当前位置移动多少的距离;
  8. move_to_element_with_offset(to_element=start_node, xoffset=0,
    yoffset=0):移动到距离某一节点多少距离的位置,start_node:某一节点

2、Actionchains类使用流程

  1. 导入鼠标事件类:from selenium.webdriver import ActionChains
  2. 实例化鼠标对象:ActionChains(browser)
  3. 找到鼠标要操作的元素:node = browser.find_element(By.XPATH, '')
  4. 指定鼠标行为:move_to_element(node) 如悬停到某一节点上
  5. 执行鼠标行为:perform()

3、Actionchains类示例

3.1、需求分析

打开浏览器,输入百度地址 - 移动到设置节点 - 点击高级搜索节点

3.2、完整代码

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver import ActionChains  # 导入鼠标事件类

# 1、打开浏览器,输入百度地址
browser = webdriver.Chrome()
browser.get(url="http://baidu.com/")
# 2、移动到设置节点
set_node = browser.find_element(By.XPATH, '//*[@id="s-usersetting-top"]')
ActionChains(browser).move_to_element(to_element=set_node).perform()  # 创建鼠标事件类对象,指定行为,执行行为
# 3、查找高级搜索节点,并点击
browser.find_element(By.XPATH, '//*[@id="s-user-setting-menu"]/div/a[2]/span').click()
time.sleep(2)

3.3、实现效果

selenium模拟鼠标滚动,Python学习笔记,# Selenium学习笔记,python,selenium文章来源地址https://www.toymoban.com/news/detail-649420.html

到了这里,关于【Python_Selenium学习笔记(五)】基于Selenium模块实现鼠标操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Python_selenium: 元素定位不到的罪魁祸首之一:iframe

    背景:组内同事最近在写脚本,使用复制的xpath始终定位不到元素,报错内容:selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: {\\\"method\\\":\\\"xpath\\\",\\\"selector\\\":\\\"//table[text()=\\\'contentTable\\\']/tbody/tr/td[16]/a[2]/i\\\"} 解题思路: 1. 由于提供的html截图信息,发现存在多层body消息体拼

    2024年02月04日
    浏览(52)
  • 基于Selenium模块实现无界面模式 & 执行JS脚本

    此篇文章主要介绍如何使用 Selenium 模块实现 无界面模式 执行JS脚本(把滚动条拉到底部),并以具体的示例进行展示。 创建浏览器对象之前,创建 options 功能对象 : options = webdriver.ChromeOptions() 添加无界面功能参数: options.add_argument(\\\"--headless\\\") 构造浏览器对象,打开浏览器,并

    2024年02月13日
    浏览(41)
  • 基于python实现Web自动化测试(selenium)、API自动化测试(requests)&附学习视频

    另一篇文章 :自动化测试框架(pytest)附学习视频 学习视频,学习文档-白月黑羽 说明: 1紧跟着写的不加/,不加空格-表示同一级别信息,加空格表示后代 2.css定位tag,id,class时分别有不同的标识,其他属性都要加[]进行搜索, Xpath所有属性都要都加【】,tag不用 3. css在使用ta

    2024年02月03日
    浏览(108)
  • 学习笔记|基于Delay实现的LED闪烁|模块化编程|SOS求救灯光|STC32G单片机视频开发教程(冲哥)|第六集(下):实现LED闪烁

    在模块化编程里,函数使用分为如下三步: 返回值 函数名称( 入口参数 ) { 函数要执行的功能 } @返回值:没有返回值就是void @函数名称:避开(IDE中标蓝),不重复,非特殊字符随便取 @入口参数:类型+名称,多个参数“,”分开,空就写void 返回值 函数名称( 入口参

    2024年02月12日
    浏览(50)
  • Python爬虫学习笔记(七)————Selenium

    目录 1.什么是selenium? 2.为什么使用selenium? 3.selenium安装 4.selenium的使用步骤 5.selenium的元素定位 6.访问元素信息 7.交互 1.什么是selenium? (1)Selenium是一个用于Web应用程序测试的工具。 (2)Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。 (3)支持通过各种

    2024年02月16日
    浏览(36)
  • 【小5聊】Python3 使用selenium模块实现简单爬虫系列一

    第一次听说Python还是在工作的时候,还是一位女生在用,当时她说可以用来处理excel文档,特别是一些统计分析。第二次让我真正进入python世界,还是在一次C站举办的大赛上。聊聊你是因为什么机缘巧合进入到python圈的呢?不妨留言说说 本期主要是聊聊,我接触到的selenium模

    2024年02月06日
    浏览(73)
  • 【python】之selenium模块,实现Web端自动化测试!【基础篇】

    Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接调用浏览器,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏等。我们可以使用selenium很容易完成之

    2024年02月06日
    浏览(45)
  • 《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第 2章感知机

    《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第 2章感知机 《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第1章 统计学习方法概论 我算是有点基础的(有过深度学习和机器学的项目经验),但也是半路出家,无论是学Python还是深度学习,都是从问

    2024年01月25日
    浏览(49)
  • 【Python_PyQtGraph 学习笔记(六)】基于GraphicsLayoutWidget 实现 曲线对象PlotDataItem 隐藏功能

    通过GraphicsLayoutWidget 可以绘制多条曲线。如果绘制多条曲线后,既想保存多条曲线的数据,又想显示其中一条曲线或几条曲线应该如何实现呢? 首先想通过GraphicsLayoutWidget 类提供的方法实现,但是PlotItem图形对象和PlotDataItem曲线对象都没有提供曲线的隐藏方法; 通过查看其源

    2023年04月08日
    浏览(56)
  • 【Python学习笔记(五)】csv模块的使用

    CSV是数据处理中经常会用到的一种文件格式,一般也被叫做逗号分隔值文件,是一种纯文本文件,使用特定的结构来排列表格数据,可以使用 Excel 软件或者文本文档打开 。 csv模块 是 python标准库模块,无需手动安装,可以直接导入 import csv # 导入csv模块 ,此篇文章介绍csv模

    2024年02月08日
    浏览(43)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包