Selenium鼠标与键盘事件常用操作方法示例


Posted in Python onAugust 13, 2018

本文实例讲述了Selenium鼠标与键盘事件常用操作方法。分享给大家供大家参考,具体如下:

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。

在之前的《Selenium元素的常用操作方法》中有讲到元素的一些常用方法,接下来记录一下元素的鼠标与键盘事件

鼠标事件

在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类提供。ActionChains类提供了鼠标操作的常用方法:

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

下面需要操作浏览器实现下面这样的一个操作,即使鼠标悬停:

Selenium鼠标与键盘事件常用操作方法示例

代码如下:

from selenium.webdriver import Chrome
from selenium.webdriver.common.action_chains import ActionChains
driver = Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")
driver.get("https://www.baidu.com/")
element = driver.find_element_by_link_text("设置")
ActionChains(driver).move_to_element(element).perform()

键盘事件

Keys类提供了几乎键盘上的所有按键的方法,在前面的博文中有了解到,send_keys()可以用来模拟键盘输入的操作,除此之外,我们还可以用Keys来模拟键盘上的按键,或者组合键,如Ctrl + CCtrl + V等等。

from selenium.webdriver import Chrome
from selenium.webdriver.common.keys import Keys
driver = Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")
driver.get("https://www.baidu.com/")

模拟键盘输入“python”:

driver.find_element_by_id("kw").send_keys("python.")

删除最后一个字符:

driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)

模拟键盘输入一个空格:

driver.find_element_by_id("kw").send_keys(Keys.SPACE)

模拟键盘输入“教程”:

driver.find_element_by_id("kw").send_keys("教程")

输入框全选:

driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"a")

剪切:

driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"x")

粘贴:

driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"v")

回车:

driver.find_element_by_id("kw").send_keys(Keys.ENTER)

下面介绍几个常用的键盘操作:

  • 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键

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中的一些陷阱与技巧小结
Jul 10 Python
在Mac OS系统上安装Python的Pillow库的教程
Nov 20 Python
Django中使用celery完成异步任务的示例代码
Jan 23 Python
python线程中同步锁详解
Apr 27 Python
Python 脚本获取ES 存储容量的实例
Dec 27 Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 Python
使用python将mysql数据库的数据转换为json数据的方法
Jul 01 Python
python3.6 如何将list存入txt后再读出list的方法
Jul 02 Python
三个python爬虫项目实例代码
Dec 28 Python
什么是Python中的匿名函数
Jun 02 Python
Python爬取12306车次信息代码详解
Aug 12 Python
pytorch 预训练模型读取修改相关参数的填坑问题
Jun 05 Python
python删除字符串中指定字符的方法
Aug 13 #Python
Django contenttypes 框架详解(小结)
Aug 13 #Python
Python中的Numpy矩阵操作
Aug 12 #Python
浅谈python之新式类
Aug 12 #Python
详解Django中类视图使用装饰器的方式
Aug 12 #Python
python中pip的安装与使用教程
Aug 10 #Python
python3判断url链接是否为404的方法
Aug 10 #Python
You might like
oracle资料库函式库
2006/10/09 PHP
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
PHP高自定义性安全验证码代码
2011/11/27 PHP
PHP中运用jQuery的Ajax跨域调用实现代码
2012/02/21 PHP
php中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
php截取中文字符串不乱码的方法
2013/12/25 PHP
ThinkPHP惯例配置文件详解
2014/07/14 PHP
PHP实现图片旋转效果实例代码
2014/10/01 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
Javascript 自定义类型方法小结
2010/03/02 Javascript
jQuery最佳实践完整篇
2011/08/20 Javascript
JS获取各种浏览器窗口大小的方法
2014/01/14 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
jQuery UI制作选项卡(tabs)
2016/12/13 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
vue权限管理系统的实现代码
2019/01/17 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
2019/06/10 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
[01:12:27]EG vs Secret 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
[01:02:26]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第二场 1月18日
2021/03/11 DOTA
提升Python程序运行效率的6个方法
2015/03/31 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
html5 div布局与table布局详解
2016/11/16 HTML / CSS
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
乌克兰机票、铁路和巴士票、酒店搜索、保险:Tickets.ua
2020/01/11 全球购物
走进敬老院活动总结
2014/07/10 职场文书
大学生党员个人剖析材料
2014/10/08 职场文书
西岭雪山导游词
2015/02/06 职场文书
信仰纪录片观后感
2015/06/08 职场文书
小学数学继续教育研修日志
2015/11/13 职场文书
Vue实现动态查询规则生成组件
2021/05/27 Vue.js
Vue h函数的使用详解
2022/02/18 Vue.js
关于vue-router-link选择样式设置
2022/04/30 Vue.js