Selenium基础:鼠标操作 05

发布时间 2023-06-25 14:53:51作者: dayday啊噗

*需要导入ActionChains类

from selenium.webdriver.common.action_chains import ActionChains

1、鼠标右击 context_click(element)方法

from selenium import webdriver

#导入actionchains
from selenium.webdriver.common.action_chains import ActionChains
import time

driver = webdriver.Chrome()
driver.get("")
time.sleep(1)

#定位需要右击的元素
element = drver.find_element_by_id('')
#对元素进行右击操作
ActionChains(driver).context_click(element).perform()
time.sleep(3)

driver.quit()
  • ActionChains(driver): 将driver传入ActionChains中驱使driver进行相关操作
  • perform(): 执行所有ActionChains中存储的行为

2、鼠标双击 double_click(element)方法

ActionChains(driver).double_click(element).perform()

3、鼠标悬停 move_to_element(element)方法

ActionChains(driver).move_to_element(element).perform()

4、鼠标拖放 drag_and_drop(source,target)

  • source: 源对象 需要移动的元素
  • target: 目标对象 将源对象拖放至目标对象位置
from selenium import webdriver
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()

driver.quit()

5、鼠标其他事件

>单击左键不放 click_and_hold(element)     

使用:ActionChains(driver).click_and_hold(element).perform

>鼠标移动到元素具体位置处 move_to_element_with_offset(element,xoffset,yoffset)

使用:ActionChains(driver).move_to_element_with_offset(element,20,10).perform()

(以元素element的左上处为原点x=0 y=0。向右为x轴的正坐标,向下为y轴的正坐标)

>释放鼠标   release(element)

使用:ActionChains(driver).release(element)