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

Имя элемента выбираемого значения является статическим («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
rayl1994 13 Апр 2020 в 10:32
Добро пожаловать в СО! Вопрос не ясен, пожалуйста, будьте очень конкретны и подробно опишите свою проблему в простой, последовательной и понятной форме.
 – 
JChat
13 Апр 2020 в 10:37

1 ответ

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

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

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

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

print(Incorporation.text)
1
supputuri 13 Апр 2020 в 16:10