我们在做自动化的时候,有时会用一些鼠标的操作,比如右键单击、双击等操作,selenium提供了ActionChains来供我们进行鼠标的一些相关操作
首先我们需要导入ActionChains
from selenium.webdriver.common.action_chains import ActionChains
简答举例,ActionChains支持以下操作:
1.点击操作:click()
2.右键单击:context_click()
3.双击操作:double_click()
4.鼠标悬停:move_to_element()
当然还有很多鼠标操作,这里我就不一一列举了
注意:我们进行所有操作之后,需要preform()去执行动作
下面列两个个简单的事例:
鼠标悬停操作:
from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time ''' 1.实例化鼠标对象 2.找到需要操作的页面元素 3.进行鼠标操作 ''' driver = webdriver.Chrome() driver.get("https://www.baidu.com/") time.sleep(2) #实例化鼠标对象 action = ActionChains(driver) #定位【设置】元素 setting = driver.find_element_by_xpath("//div[@id='u1']//a[text()='设置']") #鼠标移动到该元素上,鼠标悬停 action.move_to_element(setting).perform()
右键单击操作:
from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time ''' 1.实例化鼠标对象 2.找到需要操作的页面元素 3.进行鼠标操作 ''' driver = webdriver.Chrome() driver.get("https://www.baidu.com/") time.sleep(2) #实例化鼠标对象 action = ActionChains(driver) #定位【设置】元素///我这里是随意定位的,大家可以定位自己要操作的元素即可 setting = driver.find_element_by_xpath("//div[@id='u1']//a[text()='设置']") #右键单击 action.context_click(setting).perform()