一、问题

我们有时候在使用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在使用中自动进行定位,所以在选择元素的时候不随意手动点击内容,造成动作链中断无法完成响应的操作。

posted on 2019-03-11 20:23  蔚蓝色の天空  阅读(667)  评论(0编辑  收藏  举报