selenium中动作链的使用

一、问题

我们有时候在使用selenium的时候,会遇到悬停后点击元素的操作,因此需要一个动作链来完成这个功能。

二、解决

从selenium的包中导入actionchains函数,利用xpath找到第一个元素,在利用move_to_element(【第一个元素的xpath】).perform()

再利用find_element_by_xpath(【第二个元素的xpath】)将连个元素作为一个整体,再利用click()进行调用。

1 from selenium.webdriver.common.action_chains import ActionChains
2        article = self.browser.find_element_by_xpath('//*[@id="' + key_word + '"]')
3             ActionChains(self.browser).move_to_element(article).perform()
4             menu = self.browser.find_element_by_xpath('//*[@id="' + key_word + '"]/div/div/div/ul/li[' + str(n) + ']/a')
5             menu.click()

三、注意事项

由于xpath在使用中自动进行定位,所以在选择元素的时候不随意手动点击内容,造成动作链中断无法完成响应的操作。

原文地址:https://www.cnblogs.com/future-dream/p/10512948.html