Python selenium ActionChains 基本操作
ActionChains类继承自object类,但是需要为其传入一个driver对象,即ActionChains(driver)
此类常用于模拟鼠标键盘操作,其API列表如下:
perform() 此方法执行储存的所有动作
单击
click(self, on_element=None),此方法即为鼠标单击动作,输入参数为一个元素,可以不输入
用法:ActionChains(driver).click(driver.find_element_by_id("input")
单击并保持
click_and_hold(self, on_element=None),此方法点击一个元素并保持,参数为一个元素
右击
context_click(self, on_element=None),此方法为右击一个元素,参数为一个元素
双击
double_click(self, on_element=None),此方法为双击一个元素,参数为一个元素
拖放(将一个元素拖至另外一个元素)
drag_and_drop(self, source, target),此方法将source元素拖放至target元素处,参数为两个元素
拖放(将一个元素拖放至另外一个位置)
drag_and_drop_by_offset(self, source, xoffset, yoffset),此方法将一个source元素拖放至xoffset, yoffset处,参数为一个元素,两个数值距离(需为整形)
按下某个按键
key_down(self, value, element=None),此方法为按下某个按键如ctrl,shift,alt,参数为一个按键和一个元素(可为空)
如模拟ctrl+c:ActionsChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()
松开一个按键
key_up(self, value, element=None),此方法为松开某个按键如ctrl,shift,alt,参数为一个按键和一个元素(可为空),需要和key_down配合使用
移动鼠标一段横纵距离
move_by_offset(self, xoffset, yoffset),此方法为移动鼠标至指定的坐标,参数为两个数值(需为整形)
移动至某个元素
move_to_element(self, to_element),此方法为移动鼠标至一个指定的元素,参数为一个元素
dri=driver.find_element_by_id(register_dir['id_username'])
ActionChains(driver).move_to_element(dri).click()
移动至某个元素,使用距离
move_to_element_with_offset(self, to_element, xoffset, yoffset)此方法为移动鼠标至一个指定的元素,参数为一个元素,和两个整形数字
松开鼠标
release(self, on_element=None),此方法为松开鼠标,和拖放等一起使用
键盘输入
send_keys(self, *keys_to_send),此方法为向一个元素输入一个字符串,需先找到该元素
send_keys_to_element(self, element, *keys_to_send),此方法为向一个元素输入一个字符串,参数为一个元素和一个字符串
Python selenium ActionChains 基本操作的更多相关文章
- python selenium webdriver入门基本操作
python selenium webdriver入门基本操作 未经作者允许,禁止转载! from selenium import webdriver import time driver=webdr ...
- Python+Selenium基础入门及实践
Python+Selenium基础入门及实践 32018.08.29 11:21:52字数 3220阅读 23422 一.Selenium+Python环境搭建及配置 1.1 selenium 介绍 ...
- 使用python selenium进行自动化functional test
Why Automation Testing 现在似乎大家都一致认同一个项目应该有足够多的测试来保证功能的正常运作,而且这些此处的‘测试’特指自动化测试:并且大多数人会认为如果还有哪个项目依然采用人工 ...
- WEB自动化(Python+selenium)的API
在做Web自动化过程中,汇总了Python+selenium的API相关方法,给公司里的同事做了第二次培训,分享给大家 ...
- python+selenium 自动化测试实战
一.前言: 之前的文章说过, 要写一篇自动化实战的文章, 这段时间比较忙再加回家过11一直没有更新博客,今天整理一下实战项目的代码共大家学习.(注:项目是针对我们公司内部系统的测试,只能内部网络访问, ...
- python selenium TouchAction模拟移动端触摸操作(十八)
最近做移动端H5页面的自动化测试时候,需要模拟一些上拉,下滑的操作,最初考虑使用使用selenium ActionChains来模拟操作,但是ActionChains 只是针对PC端程序鼠标模拟的一系 ...
- Python Selenium 文件上传之SendKeys
昨天写了Web 文件下载的ui自动化,下载之后,今天就要写web 文件上传的功能了. 当然从折腾了俩小时才上传成功.下面写一下自己操作的步骤 首先网上说的有很多方法 如 input 标签的最好做了,直 ...
- Python+Selenium笔记(十四)鼠标与键盘事件
(一) 前言 Webdriver高级应用的API,允许我们模拟简单到复杂的键盘和鼠标事件,如拖拽操作.快捷键组合.长按以及鼠标右键操作,都是通过使用webdriver的Python API 中的Ac ...
- Python+Selenium(webdriver常用API)
总结了Python+selenium常用的一些方法函数,以后有新增再随时更新: 加载浏览器驱动: webdriver.Firefox() 打开页面:get() 关闭浏览器:quit() 最大化窗口: ...
随机推荐
- 汇编语言--微机CPU的指令系统(五)(位操作指令)
(6) 位操作指令 1.位扫描指令(Bit Scan Instruction) 指令的格式:BSF/BSR Reg, Reg/Mem ;80386+ 受影响的标志位:ZF 位扫描指令是在第二个操作数中 ...
- Git如何回滚代码?
摘要: 多年以后,你面对一个需要回滚的Git仓库,准会想起这篇博客. 某一天,用户跟我反馈,他不能分配任务了.我去看了一下Fundebug捕获的报错信息: 可知,出错原因是前端发送的请求参数有问题.这 ...
- 预览github代码
方法一:最简单的方法,在代码的url前面加上: http://htmlpreview.github.com/? 方法二: 使用Githubpages, 方法一有可能会修改css样式,不过方法二略复杂, ...
- xhr post请求
1. post提交的时候要设置post请求头,可以使用setRequestHeader(单独指定请求的某个http头) 2.通常在web开发中,使用表单提交数据的时候,一般是使用xml的格式进行的.可 ...
- es6 语法 (Decorator)
修饰器是一个函数,用来修改类的行为(注意:1.函数 2.修改行为 3.对类进行操作) { //修饰器函数定义 target:类本身,name名称,descriptor描述 let readonly ...
- web移动端,需要清楚设备像素比devicePixelRatio的应用
我们这里所说的devicePixelRatio其实指的是window.devicePixelRatio, 被所有WebKit浏览器以及Opera所支持. 概念 devicePixelRatio ,它是 ...
- [转]Javascript实现图片的预加载详解
下面的函数实现了一个我们想要的最基本的图片预加载效果 function preloadimages(arr){ var newimages=[] var arr=(typeof arr!=" ...
- BZOJ3028: 食物(生成函数)
题意 链接 Sol 生成函数入门题. 对每个物品分别列一下,化到最后是\(\frac{x}{(1-x)^4}\) 根据广义二项式定理,最后答案是\(C_{(N - 1) + 4 - 1}^{4-1} ...
- Android为TV端助力 转载自jguangyou的博客,XML基本属性大全
android:layout_width 指定组件布局宽度 android:layout_height 指定组件布局高度 android:alpha 设置组件透明度 android:backgroun ...
- Vue之axios请求数据
引入文件 <script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"> ...