Selenium Python Automation выбирает лучший тип локатора - PullRequest
0 голосов
/ 05 января 2019

Я пытаюсь использовать лучший оператор "Locating Elements", чтобы автоматизировать процесс автоматического входа на определенный веб-сайт (с использованием selenium и python). Я приложил изображение HTML-кода для страницы входа в систему:

HTML-код

и ищу элемент локатора (например, username = driver.find_element_by ....) для выделенной части изображения.

Ответы [ 2 ]

0 голосов
/ 05 января 2019

«Наилучшее» на самом деле зависит от того, что, по вашему мнению, наименее вероятно изменится. Как правило, это будет элемент id.

В вашем примере я бы использовал username = driver.find_element_by_id('UserName').getAttribute('value')

Однако иногда элемент не имеет id. Опять же, «лучшее» должно основываться на том, что наименее вероятно изменится. В порядке того, что я видел в своем опыте от лучшего к худшему:

  1. id
  2. name
  3. какая-то версия find_elements_by_xpath("//*[contains(text(), 'xyz')]")
  4. 1020 * XPath *
  5. css_selector
0 голосов
/ 05 января 2019

не могли бы вы расширить свой вопрос? "и ищу элемент локатора (например, username = driver.find_element_by ....) для части, которая гласит:"

, если вы ищете, чтобы найти элемент, который выделен. Я бы использовал find_element_by_id("UserName")

...