位置: 编程技术 - 正文

玩转python selenium鼠标键盘操作(ActionChains)(玩转兽世:兽夫,亲一个)

编辑:rootadmin

推荐整理分享玩转python selenium鼠标键盘操作(ActionChains)(玩转兽世:兽夫,亲一个),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:玩转兽世:兽夫,亲一个,玩转香江1980,玩转娱乐圈,玩转科学,玩转香江1980,玩转娱乐圈,玩转半个娱乐圈的明星大盘点,玩转华尔街,内容如对您有帮助,希望把文章链接给更多的朋友!

用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。而selenium给我们提供了一个类来处理这类事件——ActionChains

selenium.webdriver.common.action_chains.ActionChains(driver)

这个类基本能够满足我们所有对鼠标操作的需求。

1.ActionChains基本用法

首先需要了解ActionChains的执行原理,当你调用ActionChains的方法时,不会立即执行,而是会将所有的操作按顺序存放在一个队列里,当你调用perform()方法时,队列中的时间会依次执行。

这种情况下我们可以有两种调用方法:

&#;链式写法

&#;分步写法

两种写法本质是一样的,ActionChains都会按照顺序执行所有的操作。

2.ActionChains方法列表

click(on_element=None) ——单击鼠标左键

click_and_hold(on_element=None) ——点击鼠标左键,不松开

context_click(on_element=None) ——点击鼠标右键

double_click(on_element=None) ——双击鼠标左键

drag_and_drop(source, target) ——拖拽到某个元素然后松开

drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

key_down(value, element=None) ——按下某个键盘上的键

key_up(value, element=None) ——松开某个键

move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

move_to_element(to_element) ——鼠标移动到某个元素

move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

perform() ——执行链中的所有动作

release(on_element=None) ——在某个元素位置松开鼠标左键

send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

接下来用示例来详细说明和演示每一个方法的用法:

玩转python selenium鼠标键盘操作(ActionChains)(玩转兽世:兽夫,亲一个)

3.代码示例

1. 点击操作

示例网址

代码:

结果:

[CLICK][DOUBLE_CLICK][RIGHT_CLICK]

2.鼠标移动

示例网址

示例代码:

结果

Mouse moved

Mouse moved

3.拖拽

示例网址

代码:

结果:

dropped dropped dropped dropped

一般用坐标定位很少,用上例中的方法1足够了,如果看源码,会发现方法2其实就是方法1中的drag_and_drop()的实现。注意:拖拽使用时注意加等待时间,有时会因为速度太快而失败。

4.按键

模拟按键有多种方法,能用winapi来实现,能用SendKeys来实现,也可以用selenium的WebElement对象的send_keys()方法来实现,这里ActionChains类也提供了几个模拟按键的方法。

示例网址

代码1:

结果:

key downed charCode=[0] keyCode=[] CTRLkey upped charCode=[0] keyCode=[] NONEkey pressed charCode=[] keyCode=[0] NONE

示例2:

示例网址

代码:

结果:

Test KeysTest Keys

复制粘贴用WebElement< input >.send_keys()也能实现,大家可以试一下,也可以用更底层的方法,同时也是os弹框的处理办法之一的winapi,有兴趣也可以试试SendKeys、keybd_event

标签: 玩转兽世:兽夫,亲一个

本文链接地址:https://www.jiuchutong.com/biancheng/385350.html 转载请保留说明!

上一篇:Python selenium文件上传方法汇总(selenium在pycharm)

下一篇:Python selenium 三种等待方式解读

  • 北京增值税发票查验平台
  • 金税四期不会对个人产生影响
  • 金税工程是什么单位
  • 公司法人已变更,前法人被失信
  • 未出资到位的股东
  • 正常工资薪金所得是什么意思
  • 汇算清缴产生的企业所得税如何做账
  • 购房补贴退契税3个月没到账
  • 无收入证明需要哪些手续
  • 上市公司限制性股票行权时间限制多久
  • 购入固定资产会影响营业利润吗
  • 外贸企业采购货物会计分录
  • 单位购买办公用品可以抵扣吗
  • 不征税发票报税怎么报
  • 加油发票税号错误怎么补救
  • 公司招聘费属于什么科目
  • 增值税包括土地整治收入吗
  • 在win7系统中如何让电脑恢复出厂设置方法
  • 民间非盈利组织会计信息的使用者
  • 更改文件后缀算转换格式吗
  • excel表格怎么自制表格
  • 如果工资少发怎么办
  • nwtray.exe - nwtray是什么进程 作用是什么
  • 企业清算剩余财产分配是否交个人所得税
  • 会计核算是什么岗位
  • 国家差旅费报销最新标准住宿
  • 进出口企业税务怎可以查出问题
  • 收到质量赔款做什么会计科目
  • react router教程
  • 长期借款的利息计入
  • gnss定位技术的应用前景
  • vuejs axios
  • es6解构赋值对象
  • 浅析企业坏账产生的原因及对策
  • 法人和自然人有什么区别通俗一点
  • 网上银行回单可以做账吗
  • 秸秆回收加工项目
  • java线程的执行体
  • 织梦模板官网
  • 利息收入为什么冲减财务费用
  • 投资现金流负值表示什么
  • sqlserver2012安装后找不到
  • 小规模建筑公司开劳务费发票税率
  • 商品周转天数计算方法
  • 月末应交增值税借方余额期末该怎么处理
  • 什么是限制性股票激励
  • 房产税税率采用比例税率按照房产余值计征的年税率为
  • 费用转销是什么意思
  • 购买固定资产记账
  • 突然收到财付通转出的钱
  • 收银电脑怎么录商品
  • 自产货物用于在建工程账务处理
  • 收到票据款
  • 物业公司收的水费怎么做账
  • 其他应收款如何计提坏账准备
  • 商贸企业固定资产可以一次性扣除吗?
  • 医疗器械销售能一年挣一百万么
  • 企业可以变更行业吗
  • 代理记账许可证查询
  • mysql导入导出sql文件
  • win8改win7怎么改
  • windowsserver2008远程桌面怎么打开
  • itunes无法更新app
  • win7无法安装谷歌
  • 如何查看win10版本是不是正版
  • linux php 开发教程
  • win8开机启动项
  • cocos2dx安装win7教程视频
  • css3兼容性问题
  • 原生javascript开发
  • js两个函数互相调用
  • jquery中的选择器有哪些
  • JavaScript驾驭网页-CSS与DOM
  • android动画种类
  • 客户端名称 android-
  • 去伪存真栏目为什么取消啦
  • 滴灌带设备一套多少钱
  • 预缴增值税申报表申报期限
  • 税务部门意识形态
  • 浙江欧派和广东欧派哪个好
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设