Тестер XPath

Проверяйте выражения XPath 1.0 на XML или HTML и сразу видите найденные узлы, атрибуты, текст и числовые или строковые результаты встроенным движком браузера.

Разбирать документ как
Вычисляется встроенным в браузер движком XPath 1.0 (document.evaluate). Для XML с пространством имён по умолчанию поиск возможен только через префиксы, объявленные корневым элементом. Ничего не загружается на сервер.

Что такое Тестер XPath?

Тестер вычисляет выражение XPath на вставленном вами документе XML или HTML и показывает результат: найденные элементы с разметкой и текстом, значения атрибутов либо число, строку или логическое значение для выражений вроде count() или sum(). Результаты обновляются по мере ввода.

Как пользоваться Тестер XPath

  1. Введите выражение XPath, например //book[price > 35]/title.
  2. Выберите, разбирать документ как XML или как HTML.
  3. Вставьте или отредактируйте документ.
  4. Прочитайте число совпадений и каждый найденный узел либо скалярный результат.

Пример

Ввод
//book[price > 35]/title on the sample bookstore XML
Вывод
2 matches: Learning XML, XQuery Kick Start

sum(//book/price) возвращает 119.94.

Когда использовать Тестер XPath

Используйте для разработки XPath для веб-скрапинга, локаторов Selenium/Playwright, XSLT или обработки конфигураций XML. Браузеры реализуют только XPath 1.0, поэтому функции XPath 2.0/3.1 (например, matches(), string-join()) недоступны. Скрипты во вставленном HTML не выполняются.

Как работает Тестер XPath

Документ разбирается встроенным DOMParser браузера (application/xml или text/html); синтаксические ошибки XML сообщаются. Выражение вычисляется через document.evaluate(), собственный движок XPath 1.0 браузера, с результатами ANY_TYPE, поэтому поддерживаются наборы узлов, числа, строки и логические значения. Префиксы пространств имён разрешаются по объявлениям на корневом элементе. Отображается до 200 совпадений.

Распространенные Случаи Использования

  • Построить локатор вроде //button[normalize-space()="Save"] для UI-тестов.
  • Извлечь все значения атрибутов через //book/@category.
  • Посчитать количество или сумму значений в XML-ленте.
  • Отладить, почему XPath в скрапере ничего не возвращает.

Часто Задаваемые Вопросы

Почему мой XPath с пространством имён по умолчанию ничего не возвращает?

В XPath 1.0 имена без префикса никогда не совпадают с элементами в пространстве имён. Объявите префикс на корневом элементе и используйте его либо применяйте *[local-name()='book'].

Разбирать как HTML или как XML?

HTML для веб-страниц (терпимый разбор, теги в нижнем регистре); XML для лент, SOAP, карт сайта и конфигураций.

Поддерживается ли XPath 2.0?

Нет. Все основные браузеры реализуют только XPath 1.0.

Что сделать дальше

Другие категории