使用click()可以模拟鼠标的左键点击事件,现在的web页面中有很多其他的鼠标交互方式,比如鼠标右击、双击、悬停、鼠标拖放等功能。在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类。

导入ActionChains类

from selenium.webdriver.common.action_chains import ActionChains
python3+selenium入门08-鼠标事件

 

ActionChains类常用的方法:

context_click():鼠标右键

double_click():鼠标双击

drag_and_drop():鼠标拖放

move_to_element():鼠标悬停

perform():执行ActionChains类中的行为,就是上面那些功能,最后都需要添加这个方法来执行

一般使用方法:ActionChains(浏览器实例).上面操作的方法(要操作的元素).perform()

 

鼠标右键

from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver
dr = webdriver.Chrome()
dr.get('https://www.baidu.com')
xw = dr.find_element_by_link_text('新闻')
ActionChains(dr).context_click(xw).perform()

应该会在百度首页新闻那里右键

 

 

鼠标悬停

from selenium.webdriver.common.action_chains import ActionChains
from selenium import webdriver
dr = webdriver.Chrome()
dr.get('https://www.baidu.com')
sz = dr.find_element_by_link_text('设置')
ActionChains(dr).move_to_element(sz).perform()

应该会在百度首页设置那里悬停,要点悬停下面的按钮,应该要加个等待时间的设置。

 

 

鼠标双击和上面样例差不多。

鼠标拖放的需要传入两个元素,在第一个元素上按住鼠标左键,拖动至第二个元素上释放

相关文章:

  • 2021-07-04
  • 2021-08-28
  • 2022-12-23
  • 2021-11-06
  • 2021-11-25
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-06
  • 2021-10-14
  • 2021-09-07
  • 2022-12-23
  • 2022-12-23
  • 2021-12-16
相关资源
相似解决方案