Как разрешить изменения в идентификатор элемента в HTML? - PullRequest
0 голосов
/ 20 сентября 2019

После развёртывания id элементов изменены.Так что это не может выбрать эти элементы по идентификатору в селене, используя python.

Предположим, я хочу найти следующий элемент в HTML.

<input class="o_form_input c_field-65 o_form_field o_form_required" id="o_field_input_22" type="text">

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

1 Ответ

0 голосов
/ 20 сентября 2019

В этом случае вам не следует размещать свой элемент по id (поскольку он не устойчивый).

Например, вы можете использовать Xpath (другие локаторы также могут работать):

login_form = driver.find_element_by_xpath("//form[@id='loginForm']")

или

username = driver.find_element_by_xpath("//form[@id='loginForm']/input[1]")

Теперь единственное, что вы не можете скопировать из этого, это сам xpath.Это зависит от вашего веб-сайта / html / DOM.

Простой способ получить правильный xpath - проверить элементы с помощью f12, а затем щелкнуть правой кнопкой мыши по элементу, перейти к копированию и выбрать [copy xpath].Вы можете вставить его в свой код.

Дайте мне знать, это было полезно!

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