Я пытаюсь получить Firefox с Selenium WebDriver, чтобы ввести поисковый запрос в поле поиска на этом Boerse Frankfurt webpage.ElementNotVisibleException, когда Selenium WebDriver не полный экран
Я могу с успехом установить элемент сети через find_element_by_name
или find_element_by_xpath
, что дает <selenium.webdriver.remote.webelement.WebElement object at 0x10768e490>
.
Однако при попытке очистить поле, отправить ключи, или в противном случае нажмите на него, я получаю сообщение об ошибке:
ElementNotVisibleException: Сообщение: Элемент в настоящее время не видно и поэтому не может быть взаимодействовали с
Я не знаком с этой ошибкой, так как, прежде чем при работе с селеном, так что я в недоумении, что может быть не так с моим кодом:
driver.get("http://en.boerse-frankfurt.de/")
search_string = "test"
search_box = driver.find_element_by_xpath(".//*[@id='searchvalue']")
search_box.send_keys(search_string)
search_box.send_keys(Keys.RETURN)
Edit: Проблема была в том, что окно драйвера не было развернуто на весь экран. См. Ответ/комментарии ниже.
Он ожидает видимости элемента до появления «TimeoutException». Для невооруженного глаза элемент отображается в браузере. Может быть, есть «скрытый» элемент или такой. – Winterflags
@Winterflags, это странно, это работает для меня как есть. Что делать, если вы увеличили окно браузера до перехода на страницу: 'driver.maximize_window()'? – alecxe
Это решило! Хорошая находка! Я фактически установил драйвер только для использования левой половины экрана. Я бы, наверное, никогда об этом не подумал. – Winterflags