Python+Selenium自动化 模拟鼠标操作
在webdriver中,鼠标的一些操作如:双击、右击、悬停、拖动等都被封装在ActionChains类中,我们只用在需要使用的时候,导入这个类就可以了。
0.ActionChains类提供的鼠标常用方法:
- perform():执行所有 ActionChains 中存储的行为。
- context_click():右击
- double_click():双击
- drag_and_drop():拖到
- move_to_element():鼠标悬停
注意:
- 使用之前需要引入 ActionChains 类。
from selenium.webdriver.common.action_chains import ActionChains
鼠标右击实例
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains # 引入 ActionChains 类
browser = webdriver.Chrome()
browser.get('https://www.baidu.com')
# 定位到要右击的元素
right_click = browser.find_element_by_link_text('新闻')
# 对定位到的元素执行鼠标右键操作
#ActionChains(driver):调用ActionChains()类,并将浏览器驱动browser作为参数传入
#context_click(right_click):模拟鼠标双击,需要传入指定元素定位作为参数
#perform():执行ActionChains()中储存的所有操作,可以看做是执行之前一系列的操作
try:
ActionChains(browser).context_click(right_click).perform()
print('成功右击')
except Exception as e:
print('fail')
#输出内容:成功双击
注意:
- ActionChains(driver):调用ActionChains()类,并将浏览器驱动browser作为参数传入
- context_click(right_click):模拟鼠标双击,需要传入指定元素定位作为参数
- perform():执行ActionChains()中储存的所有操作,可以看做是执行之前一系列的操作
1.鼠标右击
- context_click():右击
# 鼠标右击
# 定位到要右击的元素
right_click = browser.find_element_by_id("xx")
# 对定位到的元素执行右击操作
ActionChains(browser).move_to_element(right_click ).perform()
2.鼠标双击
- double_click():双击
# 定位到要右击的元素
double_click = browser.find_element_by_id('xx')
# 对定位到的元素执行鼠标右键操作
ActionChains(browser).context_click(double_click).perform()
3.鼠标拖动
- drag_and_drop(source,target):拖动
- source:开始位置;需要拖动的元素
- target:结束位置;拖到后需要放置的目的地元素
# 开始位置:定位到元素的原位置
source = driver.find_element_by_id("xx")
# 结束位置:定位到元素要移动到的目标位置
target = driver.find_element_by_id("xx")
# 执行元素的拖放操作
ActionChains(driver).drag_and_drop(source,target).perform()
4.鼠标悬停
- move_to_element():鼠标悬停
# 定位到要悬停的元素
move = driver.find_element_by_id("xx")
# 对定位到的元素执行悬停操作
ActionChains(driver).move_to_element(move).perform()
单引号写入数据库,并结合写成函数和动静态类中方法对比小结
google地图路径查询
c# 图像旋转
google地图简单
asp.net gridview 添加属性
linq to entity Oracle 执行存储过程或函数
c# 判断非法字符
c# 写入文件
google map Inspecting DirectionsResults
- 最新文章
-
诺基亚手机型号命名规则
杨晓兵:用中国人自己的网页浏览器内核
无WiFi者的福音——让手机使用电脑网络(可上手机市场)
Windows Phone 系列 控件的类型
Windows Phone 系列 Windows Phone 应用程序生命周期
Windows Phone 系列 编译好的xap文件想部署到手机使用Application Deployment工具提示 “Error 0x89731811
Windows Phone 系列 WP7系统
Windows Phone 系列 如何创建 Windows Phone 初始屏幕
Windows Phone 系列 在屏幕上的布局
Windows Phone 系列 如何在 Windows Phone 中执行页面导航