Как очистить jsp от написанных веб-страниц - PullRequest
0 голосов
/ 30 июня 2019

Я хочу автоматизировать процесс входа на сайт https://www.fois.indianrail.gov.in/foisweb/view/GG_LoginNew.jsp?txtProj=TMS%20ZONAL&clintId=?.

Я попытался сослаться на все текстовые поля на веб-странице.

driver.get('https://www.fois.indianrail.gov.in/foisweb/view/GG_LoginNew.jsp?txtProj=TMS%20ZONAL&clintId=')

pot='//*[@id="txtUserId"]'

tom=driver.find_element_by_xpath(pot)

tom.send_keys('text')

mot='//*[@id="txtPassword"]'

pot=driver.find_element_by_xpath(mot)

pot.send_keys('text')

radio_point='//*[@id="txtOptnD"]'

iiu=driver.find_element_by_xpath(radio_point)

iiu.click()

location_point='//*[@id="txtLocation"]'

mp=driver.find_element_by_xpath(location_point)

mp.send_keys('text')

submit='//*[@id="Submit"]'

sub=driver.find_elements_by_xpath

sub.click()

Я ожидаю, что текстовое поле имени пользователя будет написано как текст, но ошибка:

selenium.common.exceptions.NoSuchElementException: Сообщение: Невозможно найти элемент: // * [@ id = "txtUserId"]

1 Ответ

1 голос
/ 30 июня 2019

Элемент, к которому вы пытаетесь получить доступ, находится внутри фрейма. Вы должны переключиться на этот кадр, прежде чем получить доступ к элементам.

Попробуйте:


driver.get('https://www.fois.indianrail.gov.in/foisweb/view/GG_LoginNew.jsp?txtProj=TMS%20ZONAL&clintId=')

driver.switch_to.frame("frmCUMain")

driver.find_element_by_id("txtUserId").send_keys("text")

driver.find_element_by_id("txtPassword").send_keys("text")

driver.find_element_by_id("txtOptnD").click()

driver.find_element_by_id("txtLocation").send_keys("location")

driver.find_element_by_id("Submit").click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...