UI自动化Selenium 鼠标滑动悬停到指定元素

本文详细解释了Selenium库中的ActionChains模块如何按照预设顺序执行动作,包括动作链的安装、存储和通过perform()方法触发执行,以及鼠标悬停的具体实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ActionChains执行原理

他是按照设计好的动作顺序链式执行;

当调用ActionChains的方法时,不会立即执行,只是将要做的动作安装顺序存放在队列中;当调用perform()方法时,队列中的方法会依次执行;

from selenium.webdriver.common.action_chains import ActionChains

# 鼠标悬停到指定元素
def moveMouse(drObject, locateType, locate):
    #循环等待元素存在
    WebDriverWait(drObject, 10, 0.5).until(EC.presence_of_element_located((locateType, locate)))
    #获取元素对象
    DH = drObject.find_element(locateType, locate)
    actions = ActionChains(drObject) # 实例化actionChains对象
    actions.move_to_element(DH) # 追加滑动悬停动作到队列
    actions.perform() # 执行队列中的动作