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

时间:2016-07-24 09:19:24

标签: python selenium

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

并且两者都用于通过javascript选择下拉元素...

问题是selenium无法点击元素并抛出不可见的异常.....

请参阅此处的下拉框:[在“前5名”标签下方] http://www.oddsbox.com/baseball/mlb/record/section.odd

以下解决方案也无济于事: Python Selenium: Find object attributes using xpath selecting element in python selenium Selenium nested li div menu select() or click() python how to select custom dropdown list element from selenium

1 个答案:

答案 0 :(得分:0)

如果你发布你的代码会很好,所以我们可以更清楚地看到发生了什么。 也承认,我没有检查你的所有链接,看看一切无效。不过我猜是这样的:

如果您收到ElementNotVisible个异常,那么在选择之前您应该可以看到该元素。

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

看起来像:

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()

我个人厌恶这些丑陋的xpath(特别是对于可维护性),并且可能会以某种方式改变它,但这不是这个问题的范围。

希望有所帮助!