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() # 执行队列中的动作