#python #selenium
#python #selenium
Вопрос:
Я использую python и selenium, чтобы попытаться выполнить несколько идентификаторов Medicare. Я хочу перейти на этот веб-сайт и ввести идентификатор плана:
https://www.medicare.gov/find-a-plan/questions/search-by-plan-name-or-plan-id.aspx
Я смог открыть веб-страницу с помощью selenium, но я не могу ввести свой идентификатор плана, потому что я не могу правильно идентифицировать уникальный идентификатор или имя для текстового поля идентификатора плана. Кто-нибудь может мне помочь?
Спасибо
Ответ №1:
Похоже, что у него есть идентификатор: ctl00_ctl00_ctl00_MCGMainContentPlaceHolder_ToolContentPlaceHolder_PlanFinderContentPlaceHolder_tbPlanID
— почему это не работает?
В противном случае вы сможете использовать этот xpath:
/html/body/form/div[3]/div[7]/div/div/div/div[2]/div/div/div/div/div/div[1]/div/fieldset/div[3]/div[2]/input
Комментарии:
1. Я пробовал оба из них, и по какой-то причине, которую я не понимаю, это не работает.
Ответ №2:
Этот xpath найдет этот конкретный элемент для вас:
(//div[@class='textBoxDiv']/input)[2]
Я попробовал несколько разных подходов с помощью CSS и Xpath, но в итоге использовал этот подход
Ответ №3:
Вы можете найти свой ввод, используя текст метки //*[contains(text(),'Plan ID:')]/ancestor::div[2]//input
или вы можете найти метку по тексту и получить идентификатор элемента для этой метки //input[@id=(//label[contains(text(),'Plan ID:')]/@for)]
Комментарии:
1. Я не возражаю против вашего голосования, но не могли бы вы, пожалуйста, объяснить причину? Я был бы очень признателен, если бы вы могли указать мне, что не так.