python+selenium 鼠标事件操作方法

 更新时间:2019年08月24日 15:42:45   作者:一条漂浮的枫叶  
今天小编就为大家分享一篇python+selenium 鼠标事件操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一、前言

除了可以使用 click( ) 来模拟鼠标的单击操作,现在Web产品中还提供了更丰富的鼠标交互方式,例如鼠标右键、双击、悬停、拖动等功能,在WebDriver中,将这些关于鼠标操作的方法都封装在 ActionChains 类中。

ActionChains 类提供了鼠标操作的常用方法:

perform() 执行所有ActionChains中存储的行为
context_click() 右击
double_click() 双击
drag_and_drop() 拖动
move_to_element() 鼠标悬停

二、详细使用

1.鼠标右击操作

from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
 
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要右击的元素
right_click = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).context_click(right_click).perform()
#......

ActionChains(driver):调用ActionChains类,将浏览器驱动driver作为参数传入;

perform():执行所有ActionChains中存储的行为,可以理解成是对整个操作的提交动作;

2.鼠标悬停

move_to_element()方法可以模拟鼠标悬停的动作,其用法与context_click()相同;

from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
 
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要悬停的元素
above = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).move_to_element(above).perform()
#......

3.鼠标双击

double_click() 方法用于模拟鼠标双击操作;

from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
 
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要双击的元素
double_click = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).double_click(double_click).perform()
#......

4.鼠标拖动操作

drag_and_drop(source,target) 在源位置元素上按住鼠标左键,然后移动到目标元素上释放。

source:鼠标拖动的源元素

target:鼠标释放的目标元素

from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
 
driver = webdriver.Chrome()
driver.get("url")
#......
#定位元素的源位置
source = driver.find_element_by_id("id")
#定位元素要移到到的目标位置
target = driver.find_element_by_id("id")
#对元素进行拖动操作
ActionChains(driver).drag_and_drop(source,target).perform()
#......

以上这篇python+selenium 鼠标事件操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python让列表倒序输出的实例

    python让列表倒序输出的实例

    今天小编就为大家分享一篇python让列表倒序输出的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • PyCharm设置每行最大长度限制的方法

    PyCharm设置每行最大长度限制的方法

    今天小编就为大家分享一篇PyCharm设置每行最大长度限制的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python分布式爬虫中消息队列知识点详解

    python分布式爬虫中消息队列知识点详解

    在本篇文章里小编给大家整理的是python分布式爬虫中消息队列知识点详解内容,有兴趣的朋友们可以参考下。
    2020-11-11
  • Jupyter Notebook切换虚拟环境的三种方法

    Jupyter Notebook切换虚拟环境的三种方法

    本文主要介绍了Jupyter Notebook切换虚拟环境的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 详解如何使用Python操作MySQL的各种功能和用法

    详解如何使用Python操作MySQL的各种功能和用法

    当今互联网时代,数据处理已经成为了一个非常重要的任务,而MySQL作为一款开源的关系型数据库,被广泛应用于各种场景,本篇博客将介绍如何使用Python操作MySQL的各种功能,以及一些高级用法,需要的朋友可以参考下
    2023-11-11
  • python递归算法(无限递归,正常递归,阶乘)

    python递归算法(无限递归,正常递归,阶乘)

    本文主要介绍了python递归算法,包含无限递归,正常递归,阶乘等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • pandas值替换方法

    pandas值替换方法

    今天小编就为大家分享一篇pandas值替换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python内置函数sorted()用法深入分析

    python内置函数sorted()用法深入分析

    这篇文章主要介绍了python内置函数sorted()用法,结合实例形式较为深入的分析了Python内置函数sorted()功能、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-10-10
  • Python中非常好用的内置函数详解

    Python中非常好用的内置函数详解

    这篇文章主要为大家介绍了Python中非常好用的内置函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • python学习之第三方包安装方法(两种方法)

    python学习之第三方包安装方法(两种方法)

    这篇文章主要介绍了python学习之第三方包安装方法,最近在学习QQ空间、微博(爬虫)模拟登录,都涉及到了RSA算法。这样需要下一个RSA包(第三方包),在网上搜了好多资料,在此做了总结,需要的朋友可以参考下
    2015-07-07

最新评论