Я пытаюсь выбрать радиокнопку «Hitter». Может ли кто-нибудь помочь? Я пробовал много разных вещей, но продолжаю получать «Message: element not visible».Как выбрать переключатель с Selenium и Python
Спасибо!
Я пытаюсь выбрать радиокнопку «Hitter». Может ли кто-нибудь помочь? Я пробовал много разных вещей, но продолжаю получать «Message: element not visible».Как выбрать переключатель с Selenium и Python
Спасибо!
Есть несколько способов, чтобы найти радио input
, вот один с помощью find_element_by_id()
:
radio = driver.find_element_by_id("ContentPlaceHolder1_HitterRadioButton")
radio.click()
Или, если у вас есть проблемы с этим подходом, вы можете имитировать щелчок с помощью JavaScript :
radio = driver.find_element_by_id("ContentPlaceHolder1_HitterRadioButton")
driver.execute_script("arguments[0].click();", radio)
Спасибо за ответ. Однако после запуска я все равно получаю то же самое " Сообщение: element no visible "error: ( – Josh
Странно, потому что, когда я проверяю if radio.is_selected(), он может сказать, что выбран переключатель. Но когда я пытаюсь щелкнуть его, пока он не выбран, не может показаться, что вообще отключен переключатель «Message: element not visible» – Josh
, если возможно, вы можете указать URL-адрес, чтобы предоставить решение для этого? – Shaik
Не может быть ваш элемент вне окна селена? (может быть разрешен 'driver.maximize_window()' перед тем, как вы '.get' странице). Другая причина может заключаться в том, что вы пытаетесь захватить элемент перед его загрузкой, быстрый способ обхода - это добавить 'time.sleep (5)' (или любой подходящий промежуток времени), прежде чем пытаться найти элемент. – jaapvee
@jaapvee пытается 'maximize_window()' делает полный смысл и может помочь, но добавление ожидания не поможет, я боюсь. Селен находит элемент, но не может его щелкнуть, поскольку он невидим. – alecxe
@alecxe, да, я думаю, вы правы. Давайте посмотрим, когда OP реагирует: если 'maximize_window' делает трюк, куддо за правильный ответ идет вам :) – jaapvee