当前位置: 首页 > 知识库问答 >
问题:

python selenium:在[奇怪]下拉列表中不可见的元素要单击

宋洲
2023-03-14

有两个下拉元素代码:一个是标准选项选择,另一个由div、ul、li元素组成。

不知何故,两者都用于通过java脚本选择下拉元素...

问题是硒不能点击元素并抛出不可见的异常……

请参阅此处的下拉框:[位于“Top 5”选项卡下方]http://www.oddsbox.com/baseball/mlb/record/section.odd

以下解决方案也没有帮助:Python Selenium:使用xpath选择元素在python selenium Selenium嵌套li div菜单select()或单击()python如何从selenium中选择自定义下拉列表元素查找对象属性

共有1个答案

金伟
2023-03-14

如果你能发布你的代码,那就太好了,这样我们可以更清楚地看到发生了什么。我也承认,我没有检查你的所有链接以查看所有不工作的东西。然而,我的猜测是:

如果您得到<code>ElementNotVisible</code>异常,那么您可能应该在选择元素之前使其可见。

在这种情况下,我会忘记选择命令和所有和只是: - 单击元素以打开并显示菜单,然后 - 单击该列表中的所需元素。

看起来像这样:

driver.find_element_by_xpath(".//*[@id='ctmSelectBox4_wrap']/button").click()
driver.find_element_by_xpath(".//*[@id='ctmSelectBox4_wrap']/div/ol/li[6]/label/span").click()

我个人厌恶这些丑陋的xpaths(尤其是为了可维护性),并且可能会以某种方式改变它,但是这不是这个问题的范围。

希望有所帮助!

 类似资料:
  • 问题内容: 我有一些面板内的组合框: 在我将项目更新到.NET 4之前还可以,在将项目(和AJAX)更新到.net4之后,这看起来真的很奇怪……我无法解释正确,我将显示: 我该如何解决?:)完整的CSS / ASPX页面在这里-> https://github.com/nCdy/Issues/tree/master/Ajax%20ComboBox(字符串#287) 问题答案: 我有一个类似的问题,

  • 我在的可见性中尝试了以下方法,但未成功:

  • 我一直在搜索2天,但我无法找到解决方案,我想要一个下拉列表被选中。当我使用某些元素.all css定位器单击下拉列表时,它会单击下拉列表(下拉列表打开但显示错误)。所以我试图使用链接文本打开下拉列表(完美地打开)。但在那之后,我无法在下拉列表中选择该选项。(显示“不可见元素”)。我也无法通过链接文本选择该选项。以下是详细信息 我试图通过以下方法来选择,但我不能让它工作。 等待元素变为可见。 链接文

  • 我想使用硒选择值“DATE”的选项。关于它的事情是,选项文本设置在另一部分,即ul列表。我尝试了一些我发现的解决方案,但没有一个奏效。这是我的代码: 我也试过这个,但仍然得到同样的错误: 错误: dropdown_trigger = browser.find_element_by_xpath(“//选择[@data-test=”筛选器排序“]') 消息: 元素不可交互: 元素当前不可见,可能无法操

  • 问题内容: 我正在尝试使用pythonselenium登录到网页。我找到了一个元素并将其启用,但是当我尝试向其发送send_keys()时出现错误。错误输出的主要内容(我认为)是 我的代码是 输出是 那么,我该怎么办? 问题答案: 为了使用户名字段可见,您需要将光标移动到登录链接:

  • 我有一个下拉列表,我使用它来允许用户建立到后端的查询参数。 然后,用户将单击一个按钮,我将访问用户在下拉列表中设置的值,以调用后端endpoint。 任何帮助或提示都是非常欢迎的。