Python语言技术文档

微信小程序技术文档

php语言技术文档

jsp语言技术文档

asp语言技术文档

C#/.NET语言技术文档

html5/css技术文档

javascript

点击排行

您现在的位置:首页 > 技术文档 > Python自动化运维

python+selenium 鼠标事件操作方法

来源:中文源码网    浏览:174 次    日期:2024-05-13 23:54:02
【下载文档:  python+selenium 鼠标事件操作方法.txt 】


python+selenium 鼠标事件操作方法
一、前言
除了可以使用 click( ) 来模拟鼠标的单击操作,现在Web产品中还提供了更丰富的鼠标交互方式,例如鼠标右键、双击、悬停、拖动等功能,在WebDriver中,将这些关于鼠标操作的方法都封装在 ActionChains 类中。
ActionChains 类提供了鼠标操作的常用方法:
perform()
执行所有ActionChains中存储的行为
context_click()
右击
double_click()
双击
drag_and_drop()
拖动
move_to_element()
鼠标悬停
二、详细使用
1.鼠标右击操作
from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要右击的元素
right_click = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).context_click(right_click).perform()
#......
ActionChains(driver):调用ActionChains类,将浏览器驱动driver作为参数传入;
perform():执行所有ActionChains中存储的行为,可以理解成是对整个操作的提交动作;
2.鼠标悬停
move_to_element()方法可以模拟鼠标悬停的动作,其用法与context_click()相同;
from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要悬停的元素
above = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).move_to_element(above).perform()
#......
3.鼠标双击
double_click() 方法用于模拟鼠标双击操作;
from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("url")
#......
#定位到需要双击的元素
double_click = driver.find_element_by_id("id")
#对元素进行右击操作
ActionChains(driver).double_click(double_click).perform()
#......
4.鼠标拖动操作
drag_and_drop(source,target) 在源位置元素上按住鼠标左键,然后移动到目标元素上释放。
source:鼠标拖动的源元素
target:鼠标释放的目标元素
from selenium import webdriver
#引入ActionChains类
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("url")
#......
#定位元素的源位置
source = driver.find_element_by_id("id")
#定位元素要移到到的目标位置
target = driver.find_element_by_id("id")
#对元素进行拖动操作
ActionChains(driver).drag_and_drop(source,target).perform()
#......
以上这篇python+selenium 鼠标事件操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持中文源码网。

相关内容