Как извлечь текст из элемента, который не имеет xpath - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь в интернете почистить рейтинг знака доллара для каждого ресторана на сайте доставки еды, однако xpath отсутствует.

<!-- react-text: 2108 -->
"$$"
<!-- /react-text -->

Приведенный выше код используется для рейтинга долларас того момента, когда я проверил сайт.Я попытался использовать строку выше:

    <i class="icon-bullet--small">·</i>

Однако, это выводит период, так как он не для рейтинга доллара.Я также пытался использовать:

    cost = ['//li[{}]/a/div[2]/p[2]/!'.format(x) for x in range(1, 999)]

, а также использовать "! -" и "реагировать" и "реагировать-текст" в xpath, но ничего из этого не работает.Любые предложения о том, как подойти к этому?

1 Ответ

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

Этот XPath,

//comment()[normalize-space() = "react-text: 2108"]/following-sibling::text()

выберет текстовый узел сразу после целевого комментария, вернув

"$$"

в соответствии с запросом.


Важное примечание: @ DebanjanB предупредительно указал, что комментарий, содержащий react-text: 2108, является директивой React, которую Selenium не увидит, если содержимое не извлечено как page_source.Спасибо, Дебанжан!

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