如何修复,元素<option>无法滚动到视图错误python selenium

时间:2019-01-17 23:22:54

标签: python selenium selenium-webdriver selenium-chromedriver

以下链接中的网页截图:

webpage

我试图在select元素中选择一个选项标签,但收到一条错误消息,提示该元素无法滚动到视图中。

selenium.common.exceptions.ElementNotVisibleException: Message: element not interactable: Element is not currently visible and may not be manipulated (Session info: chrome=71.0.3578.98)

代码:

dropdown = Select(driver.find_element_by_id("motes"))
dropdown.select_by_value("ALDERSHOT [Aldershot]")

1 个答案:

答案 0 :(得分:0)

您的代码应为

dropdown = Select(driver.find_element_by_id("motes"))
dropdown.select_by_visible_text("ALDERSHOT [Aldershot]")

有三种方法可以从下拉菜单中选择一个选项。

  • 下拉列表。 select_by_index(1)-使用选项的索引,从1开始

  • 下拉菜单。 select_by_value(“”)-使用选项的值,即 html属性“值”

  • 下拉菜单。 select_by_visible_text(“”)-使用可见文本

例如,如果要选择“ ACOMB-ELEC [York Acomb]”

dropdown = Select(driver.find_element_by_id("motes"))
dropdown.select_by_index(4)
dropdown.select_by_visible_text("ACOMB - ELEC [York Acomb]")
dropdown.select_by_value("433372-#42454c")

注意:ALDERSHOT [Aldershot]选项的值在屏幕快照中隐藏,因此可以使用。