web自动化 -- ActionChains()的鼠标操作

Posted mua~mua~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web自动化 -- ActionChains()的鼠标操作相关的知识,希望对你有一定的参考价值。

webdriver模块下的ActionChains类

一、两个主要组件

1、实例化  ActionChains()

 

2、ActionChains(driver).perform()

perform()的作用就是  统一提交  ActionChains(driver) 列表里面的  鼠标操作

 

 

二、ActionChains()里面常用的方法

1、点击元素:          click("目标元素")

 

2、点住元素不放:       click_and_hold("目标元素")

 

3、双击元素:    double_click("目标元素")

 

4、在某元素上松开:    release("目标元素")

 

5、拖拽某个元素到另一个元素上放开:  drag_and_drop("按住的元素", "放开的目标元素")

源码:

 

6、按住什么东西(可以是元素、可以是键盘):   key_down() 。这个要和 key_up()来配合使用

例如:复制、粘贴

其实,复制还有一个更好用的三方库    pyperclip 。  cmd输入命令:pip install pyperclip

注:这里有个特殊的就是。key_down() 是按住不放,需要 key_up() 跟起来才会放开。而,send_keys()是  完成动作后直接放开的,比如上面 输入 v 的操作就是,按住 v 又马上放开了 v 。

 

7、移动鼠标悬停到某个元素上面:      move_to_element("目标元素")

 

 

三、复杂操作示例

 

我这里为什么会  send_keys(Keys.ESCAPE) 呢?

因为 当我输入完一串字符后,会出现  右键单击的菜单。

 

 

另外还有一个   TouchActions()  类。做滑动屏幕用的,对 H5 的效果相当明显。

 

以上是关于web自动化 -- ActionChains()的鼠标操作的主要内容,如果未能解决你的问题,请参考以下文章

selenium+python自动化93-鼠标事件(ActionChains)源码详解

selenium+python自动化94-行为事件(ActionChains)源码详解

ui自动化--鼠标操作ActionChains

web自动化测试-D3-学习笔记之四(Selenium-ActionChainsApi接口详解)

ActionChains定位元素

Selenium之动作链(ActionChains)