Страницы

Поиск по вопросам

воскресенье, 29 марта 2020 г.

Определить xpath locator элемента на странице

#python #selenium #xpath




Мне нужно проверить/убедиться, что текст "(carrier specific)" существует и лежит
в нужном месте.

Я делаю

try: self.assertEqual("(carrier specific)", sel.get_table("//form/fieldset[4]/table.2.1"))


но он никак не хочет "подцепить" этот текст (обращается к пустому полю National prefix,
но не к тексту сразу за ним). Мне нужно как-то определить локейшн этого текста на страничке,
т.е. обратиться к этому элементу через xpath/css.

Dialing Location


Ответы

Ответ 1



xpath для получения текста из описанной вами ноды: //input[@name='dl-ntp']/../text()[boolean(string-length(normalize-space(.)))] xpath для проверки совпадения ожидаемого текста в описанной ноде: //input[@name='dl-ntp']/ancestor::*[1][contains(.,'carrier specific')] Если используете python, то может пригодиться: driver.execute_script("return document.evaluate('//input[@name='dl-ntp']/../text()[boolean(string-length(normalize-space(.)))]', document, null, XPathResult.ANY_TYPE, null).iterateNext().data")

Комментариев нет:

Отправить комментарий

National Prefix (carrier specific)