Using Python 3+ and Selenium > IE Driver
Я запускаю скрипт Python для автоматизации заполнения формы на странице. Причина обнаружения родительского элемента заключается в том, что существует несколько элементов с одним и тем же классом и нет других идентификаторов, кроме текстового заголовка.
HTML:
<div class = "pg_BoxContents"> /* Div I am trying to select */
<div class = "Title">Replay Permissions:</div>
</div>
Python / Селен:
replay_form = browser.find_element_by_xpath("//span[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]")
Ошибка:
selenium.common.exceptions.NoSuchElementException: Message: Unable to find element with xpath == //span[contains(text(),'Details:')]/ancestor::div[contains(@class, 'pg_BoxContents')]
Заменять:
//span[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]
с:
//div[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]
Вы используете //span[...
там, где нет span
в предоставленном вами HTML. Но есть div
.