Selenium find_element_by_id - извлечь временный идентификатор элемента - PullRequest
0 голосов
/ 13 апреля 2020

Написание сценария автоматизации для заполнения формы (на неопубликованном c веб-сайте) с использованием Selenium (Py 3.7), который включает в себя выбор значения из раскрывающегося меню.

Имя элемента значение, которое нужно выбрать, - stati c ('IncorporationPlace'), но идентификатор меняется для каждого нового сеанса браузера. Я хотел бы извлечь результат элемента для справочных целей ( "6baf88a7-eb19-4225-80be-50561871cd51" в Результат печати ниже)

Заранее большое спасибо .

Код:

Incorporation = driver.find_element_by_id('incorporationPlace')
print(Incorporation)

Результат печати:

<selenium.webdriver.remote.webelement.WebElement(session="e09c3d486345c4dbd761a5c308709e03", element="6baf88a7-eb19-4225-80be-50561871cd51")>

1 Ответ

0 голосов
/ 13 апреля 2020

Selenium создаст ссылку на каждый элемент, с которым он будет взаимодействовать в сеансе браузера. Если вы посмотрите на строку ниже

<selenium.webdriver.remote.webelement.WebElement(session="e09c3d486345c4dbd761a5c308709e03", element="6baf88a7-eb19-4225-80be-50561871cd51")>

сеанс будет содержать текущий идентификатор сеанса браузера, а

элемент будет хранить element reference`, и это будет меняться каждый раз, когда элемент загружается на страницу. Как селен будет назначать новый ссылочный идентификатор при перезагрузке контента. Вам не нужно беспокоиться об этом ссылочном идентификаторе, и все, что вам нужно сделать, это

print(Incorporation.text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...