【问题标题】:Element is not currently visible and may not be manipulated - Selenium webdriver元素当前不可见,可能无法操作 - Selenium webdriver
【发布时间】:2019-01-26 23:43:55
【问题描述】:

我试图在 <select> html 元素中选择一个选项,但由于某种原因,我收到以下错误:

Message: element not interactable: Element is not currently visible and may not be manipulated
(Session info: chrome=71.0.3578.98)
(Driver info: chromedriver=2.42.591059 (a3d9684d10d61aa0c45f6723b327283be1ebaad8),platform=Mac OS X 10.14.2 x86_64)

选择html 元素:

<select id="test-id-1">
  <option value="">[Seleccione]</option>
  <option value="2019">2019</option>
  <option value="2018">2018</option>
  <option value="2017">2017</option>
</select>

这是我的源代码:

from selenium import webdriver
from selenium.webdriver.support.ui import Select

driver = webdriver.Chrome()
driver.get(URL)

Select(driver.find_element_by_id("test-id-1")).select_by_value('2017')

感谢您的建议。

【问题讨论】:

  • 请更新您的 chrome 驱动程序。Chrome 驱动程序 2.42 最高支持 chrome 浏览器版本 70,您使用的是 chrome 浏览器版本 71。您可以从以下链接下载最新的 chrome 浏览器:chromedriver.chromium.org/downloads。如果这有帮助,请告诉我。如果您在完成后仍然收到错误,请告诉我。祝你好运!
  • 我的猜测是 SELECT 实际上是不可见的(因此出现错误),而是一些其他元素形成了一个下拉列表,并且隐藏的 SELECT 保存了该值。
  • 您的猜测@JeffC 非常好,因为那是我真正的问题!非常感谢!

标签: python selenium selenium-webdriver


【解决方案1】:

我的猜测是 SELECT 实际上是不可见的(因此出现错误),而是一些其他元素形成了一个下拉列表,而隐藏的 SELECT 包含该值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2018-09-17
    • 1970-01-01
    • 1970-01-01
    • 2018-12-03
    • 2012-05-25
    • 1970-01-01
    相关资源
    最近更新 更多