selenium鼠标移动、拖拽、双击、长按等操作

这篇博客详细介绍了如何使用selenium的ActionChains类进行鼠标操作,包括移动、拖拽、双击和长按等。通过实例展示了各种方法的用法,如move_to_element、double_click、context_click等,帮助读者掌握在自动化测试中实现更复杂的交互操作。

 selenium鼠标操作靠的是ActionChains(行为链)类,前面的文章我们已经介绍过,详情可以看ActionChains类,selenium的鼠标操作就不一一举例了,本节把鼠标移动、拖拽、双击、长按常见操作罗列下。会使用一种方法自然也会用多种方法!(selenium视觉上看不出鼠标在移动,你可以用右键点击来证实下确实移动了,案例鼠标滚动移动网页下拉

1、move_to_element(to_element)鼠标移动到指定元素

from selenium import webdriver
from selenium.webdriver import ActionChains    
element = driver.find_element_by_id('xxx')
ActionChains(driver).move_to_element(element).perform()

 

2、move_to_element_with_offset(to_element, xoffset, yoffset)

鼠标往右上方横向纵向各移动100

element = driver.find_element_by_id('xxx')
ActionChains(driver).move_to_element_with_offset(element, 100, 100).perform()

 

3、double_click(on_element=None)

双击元素,如果没有指定元素则在当前鼠标位置双击

element = driver.find_element_by_id('xxx')
ActionChains(driver).double_click(element).perform()


4、context_click(on_element=None)

在元素上点击鼠标右键,如果没有指定元素则在当前鼠标位置单击右键

element = driver.find_element_by_id('xxx')
ActionChains(driver).context_click(element).perform()

 

5、click_and_hold(on_element=None)

鼠标左键按下不松,如果没有指定元素则在当前鼠标位置

element = driver.find_element_by_id('xxx')
ActionChains(driver).click_and_hold(element).perform()

 

6、drag_and_drop(source, target)

按住 element1 元素,拖动到 element2 元素。

element1 = driver.find_element_by_id('source')     
element2 = driver.find_element_by_id('target')
ActionChains(driver).drag_and_drop(element1, element2).perform()

 

7、drag_and_drop_by_offset(source, xoffset, yoffset)

向左上角横向纵向移动100。

element = driver.find_element_by_id('source')
ActionChains(driver).drag_and_drop_by_offset(element, -100, -100).perform()

 

8、dey_down(value, element=None)

标按下某个键不释放

ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

 

9、key_up(value, element=None)

松开下某个键

ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

圈点Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值