模拟鼠标事件

web网站常用鼠标事件为:点击(click可实现)、右击、双击、悬停、长按、拖动。在selenium中可以通过 ActionChains类实现模拟鼠标常用操作。

ActionChains类中鼠标常用方法:

1 context_click(element)  # 右击
2 double_click(element)  # 双击
3 click_and_hold(element)  # 长按
4 move_to_element(element)  # 鼠标悬停在目标元素
5 move_by_offset(xoffset, yoffset)  # 鼠标悬停在目标坐标
6 drag_and_drop(source_ele, target_ele)  # 拖动

 备注:

1,使用时需导入ActionChains:from selenium.webdriver.common.action_chains import ActionChains

2,模拟事件后需添加.perform()才会执行操作

实例

模拟鼠标悬停

python模拟鼠标点击 python selenium模拟鼠标点击_python模拟鼠标点击

1 # 模拟鼠标悬停实例
 2 from selenium.webdriver.common.action_chains import ActionChains
 3 from selenium import webdriver
 4 from time import sleep
 5  
 6 driver = webdriver.Chrome()
 7 driver.get('https://www.jd.com/')  #打开京东
 8 sleep(3)
 9  
10 # 模拟鼠标事件
11 tag_element = driver.find_element_by_xpath('//*[text()="我的京东"]')  # 菜单-我的京东
12 ActionChains(driver).move_to_element(tag_element).perform()  # 鼠标悬浮在-我的京东,展开子菜单