从之前的几篇文章对selenium描述的示例中,对元素定位及其简单操作click和set_keys进行了举例,这两个操作也是在日常操作中占据不较多的使用场景。而一些特殊场景需要操作鼠标或键盘进行特殊操作,如:鼠标左、右点击、悬停,键盘F5、CTRL+C、CTRL+V……
鼠标事件:
对应的selenium除了可以使用 click( ) 来模拟鼠标的单击操作,现在Web产品中还提供了更丰富的鼠标交互方式,例如鼠标右键、双击、悬停、拖动等功能,在WebDriver中,将这些关于鼠标操作的方法都封装在 ActionChains 类中。
· perform():执行所有ActionChains存储的行为
· context_click():右击
· double_click():双击
· drag_and_drop():拖动
· move_to_element():悬停
举例:
键盘事件:
Keys类提供了几乎键盘上的所有按键的方法,在前面的博文中有了解到,send_keys()可以用来模拟键盘输入的操作,除此之外,我们还可以用Keys来模拟键盘上的按键,或者组合键,如Ctrl + C、Ctrl + V等等。
下面介绍几个常用的键盘操作:
· Keys.BACK_SPACE:删除键
· Keys.SPACE:空格键
· Keys.TAB:Tab键
· Keys.ESCAPE:回退键
· Keys.ENTER:回车键
· Keys.CONTROL,”a”:组合键,Ctrl + A
· Keys.CONTROL,”x”:组合键,Ctrl + X
· Keys.CONTROL,”v”:组合键,Ctrl + V
· Keys.CONTROL,”c”:组合键,Ctrl + C
· Keys.F1:F1键
· Keys.F12:F12键
在 Selenium WebDriver 中,有了 Actions 类和 Keys 枚举对键盘和鼠标的操作已经做的非常到位,如果有其他特殊场景再结合 python的PYAUTOGUI等库的使用,基本上可以满足工作中遇到的对鼠标键盘操作的应用了。
文章来自公众号:睿江云计算
睿江云计算官网:https://www.eflycloud.com/home?from=RJ0024
原文地址:https://blog.51cto.com/13475644/2393518