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求两个list的差集、交集与并集的方法
Nov 01 Python
Python 爬虫学习笔记之多线程爬虫
Sep 21 Python
python版本坑:md5例子(python2与python3中md5区别)
Jun 20 Python
浅谈flask源码之请求过程
Jul 26 Python
Python补齐字符串长度的实例
Nov 15 Python
余弦相似性计算及python代码实现过程解析
Sep 18 Python
妙用itchat! python实现久坐提醒功能
Nov 25 Python
python二维键值数组生成转json的例子
Dec 06 Python
Python3监控疫情的完整代码
Feb 20 Python
python中安装django模块的方法
Mar 12 Python
学python需要去培训机构吗
Jul 01 Python
python标准库ElementTree处理xml
May 20 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 mb_convert_encoding 获取字符串编码类型实现代码
2009/04/26 PHP
Discuz Uchome ajaxpost小技巧
2011/01/04 PHP
php判断变量类型常用方法
2012/04/24 PHP
PHP函数eval()介绍和使用示例
2014/08/20 PHP
php字符集转换
2017/01/23 PHP
asp.net+js 实现无刷新上传解析csv文件的代码
2010/05/17 Javascript
JQquery的一些使用心得分享
2012/08/01 Javascript
jQuery去掉字符串起始和结尾的空格(多种方法实现)
2013/04/01 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
2013/06/19 Javascript
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
JS代码判断IE6,IE7,IE8,IE9的函数代码
2013/08/02 Javascript
node.js中的http.createServer方法使用说明
2014/12/14 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
jQuery+ajax读取json数据并按照价格排序示例
2018/03/28 jQuery
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
jQuery md5加密插件jQuery.md5.js用法示例
2018/08/24 jQuery
解决vue-cli脚手架打包后vendor文件过大的问题
2018/09/27 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
基于vue手写tree插件的那点事儿
2019/08/20 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
js实现动态时钟
2020/03/12 Javascript
Python list操作用法总结
2015/11/10 Python
PyCharm导入python项目并配置虚拟环境的教程详解
2019/10/13 Python
python 中Arduino串口传输数据到电脑并保存至excel表格
2019/10/14 Python
Pycharm小白级简单使用教程
2020/01/08 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
2020/06/06 Python
详解HTML5 LocalStorage 本地存储
2016/12/23 HTML / CSS
AmazeUI 输入框组的示例代码
2020/08/14 HTML / CSS
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
DC Shoes荷兰官方网站:美国极限运动品牌
2019/10/22 全球购物
英国豪华家具和家居用品购物网站:Teddy Beau
2020/10/12 全球购物
Java如何调用外部Exe程序
2015/07/04 面试题
新书发布会策划方案
2014/06/09 职场文书
2014年小学教师工作自我评价
2014/09/22 职场文书
新娘父亲婚礼致辞
2015/07/27 职场文书
不同品牌、不同型号对讲机如何互相通联
2022/02/18 无线电