如何点击inactiveTab中的链接?

时间:2018-04-05 23:06:51

标签: python selenium selenium-webdriver

我正在构建一个基于Python 3,Selenium(Firefox)和BeautifulSup的webscraper,所以我只对Python支持感兴趣。

在html的这一部分中,我想点击 执行脚本 按钮。 html code snippet

我能够阅读页面源代码,但看起来就像我打电话:

driver.find_element_by_xpath('//a[@id="menu_link_-481524888_1374656230"]').click()

我收到错误

Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-92-dd92f6ed1ddc>", line 1, in <module>
    driver.find_element_by_xpath('//a[@id="menu_link_-481524888_1374656230"]').click()
  File "C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py", line 80, in click
    self._execute(Command.CLICK_ELEMENT)
  File "C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\webelement.py", line 628, in _execute
    return self._parent.execute(command, params)
  File "C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 312, in execute
    self.error_handler.check_response(response)
  File "C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotInteractableException: Message: Element <a id="menu_link_-481524888_1374656230" href="javascript:window.location=getPath()+"/ForwardAction.do?modulo=proposta&path=/SelecionarConvenio/SelecionarConvenio.do?destino=ListarContratos""> could not be scrolled into view

我在互联网上看到我发现标签无效,因为有一个属性inactiveTab。如果我手动点击,该网站运行正常。那么,如何访问“非活动”选项卡下的按钮?

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为inactiveTab不应该影响我们的元素。你可以尝试一下,让我知道它是否有效:

Element = driver.find_element_by_xpath('//a[@id="menu_link_-481524888_1374656230"]')
driver.execute_script("return arguments[0].scrollIntoView();", Element)
driver.execute_script("arguments[0].click()", Element)

这将执行JavaScript以与按钮进行交互。