Selenium点击隐藏按钮

时间:2017-12-17 11:54:04

标签: python selenium selenium-webdriver

我想用selenium和python控制网页

Python代码;

menu = browser.find_element_by_css_selector(".nav")
hidden = browser.find_element_by_link_text('Soluton')
element = browser.find_element_by_xpath("//div[@class=\"two-columns\"]")
Option 1: ActionChains(browser).move_to_element(menu).click(hidden)
Option 2 : ActionChains(browser).move_to_element(element).click(hidden)

html代码;

Please visit this image

我想点击导航菜单下的“解决方案”按钮。

然而,解决方案在导航菜单下。所以它是隐藏的。

所以,我输入以下代码;

选项1:

ActionChains(browser).move_to_element(menu).click(hidden)

选项2:

ActionChains(browser).move_to_element(element).click(hidden)

但是selenium没有发生任何事情,也没有给出任何错误信息。 如何使用selenium单击导航菜单下的按钮?

由于

2 个答案:

答案 0 :(得分:1)

如果我理解了您的QuestionRequirement我们需要Mouse Hover超过WebElement,文字为 Actions 其中2个选项弹出为 Request Solution ,您希望{strong> click() <{1}} / strong>即可。为此,您可以使用以下代码块:

Solution

答案 1 :(得分:0)

您可以尝试点击Actions以显示操作列表,然后点击所需的Solution选项:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait as wait
from selenium.webdriver.support import expected_conditions as EC

actions = wait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, "Actions")))
actions.click()
solution = wait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, "Solution")))
solution.click()