Как написать xpath для следующего HTML-кода - PullRequest
0 голосов
/ 24 мая 2018

<p class=""> <b class="">Inventory:</b> 177<br><b class="">UNIT:(12 per unit) </b></p>

Мне нужно получить значение 177.

Я пробовал с двумя путями xpath, первый из которых

//*[@id='product_addtocart_form']/div[3]/p[2]/text(), он вызывает исключениенедопустимое исключение селектора - это должен быть элемент

, а другой xpath - //p/b[1]/text(), он также вызывает то же исключение.

Ответы [ 4 ]

0 голосов
/ 24 мая 2018

Удалите / text () из вашего xpath и получите текст, используя метод SeleniumElement getText () или его эквивалент.Это даст текстовое значение только html полужирного тега.К какому HTML-тегу относится deos text 117?

0 голосов
/ 24 мая 2018

Попробуйте удалить часть /text() вашего xpath и получите текст, используя метод SeleniumElement getText() или его эквивалент.

0 голосов
/ 24 мая 2018

Вы можете попробовать использовать этот относительный Xpath:

//*[@class='Your Class name']//*[text()='177']
0 голосов
/ 24 мая 2018

для тегов, которые вы дали,

//p/b[contains(.,'Inventory')]/following-sibling::text()[normalize-space()]

работает выше Xpath.Но, для более точного Xpath, поделитесь ссылкой на страницу для анализа исходного кода.

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