Как составить xPath в зависимости от содержимого родительских узлов?

Как использовать xPath для поиска конкретного тега <code class="html">&lt;div&gt;+ 50 000&lt;/div&gt;</code> в блоке с именем <b>Аркадий</b>? Все блоки содержат одинаковое содержимое, но нужно найти его только в блоке с именем <b>Аркадий</b>. Как это можно сделать с помощью xPath?
  • 26 февраля 2024 г. 12:08
Ответы на вопрос 2
Для того чтобы составить xPath в зависимости от содержимого родительских узлов, можно использовать комбинированные пути. Например, если нужно найти элемент <div> с текстом "50 000" внутри блока с именем "Аркадий", xPath можно составить следующим образом:

```xpath
//div[parent::b[contains(text(),'Аркадий') and preceding-sibling::*[contains(text(),'50 000')]]
```

Этот xPath будет искать элемент <div>, который содержит текст "50 000" и находится внутри блока с тегом <b> содержащем текст "Аркадий".

Таким образом, xPath ищет элемент <div> внутри блока с именем "Аркадий" и содержащим текст "50 000".
//div[contains(text(),'Аркадий')]/following-sibling::div//div[contains(text(),'+ 50 000')]
Похожие вопросы