Я пытаюсь показать основную причину этого исключения, используя селен и Java.Пожалуйста, попробуйте реализовать в python.
ElementNotVisibleException: Сообщение: элемент не взаимодействует вызывается, когда элемент найден, но вы не можете взаимодействовать с ним.Например, вы не можете нажимать или отправлять ключи.
Для этого может быть несколько причин:
- The element is not visible / not displayed The element is off screen
- The element is behind another element or hidden Some other action
- needs to be performed by the user first to enable it.
Стратегииэто может работать, чтобы сделать его интерактивным (в зависимости от обстоятельств.)
1.Подождите, пока элемент не станет видимым / активируемым
WebDriverWait wait = new WebDriverWait(driver, timeout);
wait.until(ExpectedConditions.visibilityOf(element));
wait.until(ExpectedConditions.elementToBeClickable(element));
2.Прокручивайте, пока элемент не появится на дисплее
Actions action = new Actions(driver);
action.moveToElement(element);
3.Используйте JavaScript для прямого взаимодействия с DOM
JavascriptExecutor javascript = (JavascriptExecutor) driver;
javascript.executeScript("var element = document.querySelector('locator'); element.value = 'whatever';")
4.Выполните любое другое необходимое действие и, возможно, подождите до этого.