模拟鼠标事件
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()才会执行操作
实例
模拟鼠标悬停
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() # 鼠标悬浮在-我的京东,展开子菜单