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的列表中利用remove()方法删除元素的教程
May 21 Python
详解Python中的array数组模块相关使用
Jul 05 Python
python实现字典(dict)和字符串(string)的相互转换方法
Mar 01 Python
python爬虫的工作原理
Mar 05 Python
Python3中的列表,元组,字典,字符串相关知识小结
Nov 10 Python
python编写简易聊天室实现局域网内聊天功能
Jul 28 Python
python pands实现execl转csv 并修改csv指定列的方法
Dec 12 Python
Python进阶之@property动态属性的实现
Apr 01 Python
Python魔法方法功能与用法简介
Apr 04 Python
python3中eval函数用法使用简介
Aug 02 Python
python给视频添加背景音乐并改变音量的具体方法
Jul 19 Python
用基于python的appium爬取b站直播消费记录
Apr 17 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
用PHP实现ODBC数据分页显示一例
2006/10/09 PHP
解析crontab php自动运行的方法
2013/06/24 PHP
PHP生成二维码的两个方法和实例
2014/07/01 PHP
11个PHPer必须要了解的编程规范
2014/09/22 PHP
php通过获取头信息判断图片类型的方法
2015/06/26 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
javascript中使用正则计算中文长度的例子
2014/04/29 Javascript
node-webkit打包成exe文件被360误报木马的解决方法
2015/03/11 Javascript
javascript 开发之百度地图使用到的js函数整理
2017/05/19 Javascript
深入理解Node中的buffer模块
2017/06/03 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
layer弹出层全屏及关闭方法
2018/08/17 Javascript
JavaScript ES6中的简写语法总结与使用技巧
2018/12/30 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
详解Python中的__new__()方法的使用
2015/04/09 Python
fastcgi文件读取漏洞之python扫描脚本
2017/04/23 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
Python中利用LSTM模型进行时间序列预测分析的实现
2019/07/26 Python
Django ORM 自定义 char 类型字段解析
2019/08/09 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
详解python中的异常和文件读写
2021/01/03 Python
Django中如何用xlwt生成表格的方法步骤
2021/01/31 Python
pandas 按日期范围筛选数据的实现
2021/02/20 Python
澳大利亚在线高跟鞋商店:Shoe Me
2019/11/19 全球购物
美国名牌香水折扣网站:Hottperfume
2021/02/10 全球购物
护士实习生自我鉴定范文
2013/12/10 职场文书
社团文化节策划书
2014/02/01 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
2015年实习单位评语
2015/03/25 职场文书
专职安全员岗位职责
2015/04/11 职场文书
MySQL里面的子查询的基本使用
2021/08/02 MySQL
mysql 获取时间方式
2022/03/20 MySQL
Nginx设置HTTPS的方法步骤 443证书配置方法
2022/03/21 Servers