XPath тестер

Тествайте XPath изрази спрямо XML или HTML и инспектирайте всеки съвпадащ възел, стойност и път.

Тип на входа
XML / HTML входни данни
Резултати
Въведете XML или HTML и XPath израз, за да ги тествате.

Вашите XML, HTML и XPath се тестват директно в браузъра Ви. Нищо не се качва в BroBroGo.

ЧЗВ

Мога ли да тествам XPath върху HTML, както и върху XML?

Да. Режимът XML спазва правилата за XML пространства от имена (namespaces). Режимът HTML е по-толерантен и позволява на прости пътища като //a да съвпадат с обикновени тагове.

Как работят XML пространствата от имена (namespaces)?

Префиксите на пространства от имена, декларирани във Вашия XML, могат да се използват в XPath, например //x:item. За пространства от имена по подразбиране, //item също следва декларацията на документа.

Защо дадена заявка може да изтече по време?

Много големи документи или твърде общи изрази могат да изискват много ресурси за изпълнение. Инструментът спира изпълнението след 2 секунди, за да остане страницата активна; прецизирайте пътя или опитайте с по-малък примерен файл.

Функционалност и предназначение на XPath тестера

Инструментът „XPath тестер“ позволява тестване на XPath изрази спрямо предоставено от Вас XML или HTML съдържание. Той идентифицира и показва всички части от съдържанието, които съвпадат с въведения израз, като предоставя подробна информация за техния тип, име, път и визуализира предварителен преглед на стойността им. Потребителят може директно да копира стойността на всеки отделен резултат.

Инструментът работи с два основни входящи параметъра:

  • XML / HTML входни данни: Текстово съдържание във формат XML или HTML с максимална дължина до 500 000 знака.
  • XPath израз: XPath заявка с максимална дължина до 4000 знака.

Потребителят избира режима на обработка чрез опцията „Тип на входа“, която предлага превключване между „XML“ и „HTML“. При изпълнение на теста се извеждат следните изходни данни:

  • Общ брой на намерените съвпадения.
  • Детайлна секция за всеки съвпадащ възел, съдържаща неговия тип, име, път и предварителен преглед.
  • Бутон за копиране на стойността на конкретен резултат.
  • Статистически показатели за броя на знаците в документа („Знаци“) и броя на показаните резултати („Резултати“).

Правила за обработка и технически ограничения

За осигуряване на стабилност и бързодействие на интерфейса, инструментът прилага специфични правила и ограничения при обработката на данни:

  1. Времеви лимит (Timeout): Оценката на XPath израза се преустановява автоматично след 2 секунди, за да се предотврати блокиране на страницата. Ако изпълнението надвиши това време, се извежда съобщението: „Изпълнението на този XPath отне твърде много време. Прецизирайте израза или използвайте по-малък пример.“.
  2. Ограничение на размера на документа: При надвишаване на лимита за дължина на входните данни се показва съобщението: „Този документ е твърде голям за тестване тук. Опитайте с по-малък пример.“.
  3. Ограничение на дължината на израза: Ако въведеният XPath израз надхвърли лимита от 4000 знака, системата показва: „Този XPath израз е твърде дълъг за тестване тук.“.
  4. Грешки при анализ и изпълнение:
    • При невалидна структура на входния документ се извежда: „Този документ не можа да бъде анализиран.“.
    • При синтактично некоректен XPath израз се показва: „Този XPath израз е невалиден.“.
    • При невъзможност за оценка на израза спрямо документа се изписва: „Този XPath не можа да бъде изпълнен.“.
  5. Лимит на показваните резултати: Когато броят на съвпаденията надхвърли 200, инструментът ограничава визуализацията и показва съобщението „Показване на първите {max}.“, като се извеждат само първите 200 резултата. Ако няма намерени съвпадения, се изписва „Няма резултати.“.

Разлики между XML и HTML режими на работа

Изборът на режим на работа определя начина, по който парсерът интерпретира структурата на документа и прилага XPath правилата:

  • XML режим (XML): В този режим се спазват стриктно правилата за XML пространства от имена (namespaces). Префиксите на пространства от имена, декларирани във Вашия XML документ, могат да бъдат използвани директно в XPath израза (например //x:item). При наличие на пространства от имена по подразбиране, заявки от типа //item също следват декларацията на документа.
  • HTML режим (HTML): Този режим е по-толерантен към синтактични несъответствия. Той позволява използването на опростени пътища, като например //a, за директно откриване на стандартни HTML тагове, без да изисква строга валидация на структурата.

Трябва да се има предвид, че този инструмент е предназначен за статичен анализ на текст и не отразява динамичната структура в реално време, рендерирания DOM или мрежовите заявки на активни уеб страници.

Локално обработване на данните и поверителност

Всички операции по обработка, парсване и оценка на XPath изразите се извършват изцяло локално във Вашия уеб браузър. Въведените XML, HTML документи и XPath заявки не се изпращат към сървърите на BroBroGo. Това гарантира, че Вашите данни остават в рамките на Вашата локална работна среда по време на тестването.

Практическо приложение и оптимизация на XPath заявки

Инструментът е приложим за разработчици, тестери, специалисти по миграция на данни и уеб скрапинг, които трябва бързо да валидират адресирането на елементи в XML или HTML структури.

За избягване на грешки за превишено време (timeout) при работа с по-големи документи се препоръчва оптимизиране на XPath изразите. Избягвайте прекомерната употреба на тежки оператори за търсене в цялото дърво, като //, когато е възможно да се дефинира по-точен и директен път до елемента (например /root/parent/child). Прецизирането на изразите намалява броя на стъпките, които парсерът трябва да извърви, и предотвратява достигането на 2-секундното ограничение за изпълнение.

Често задавани въпроси (FAQ)

Мога ли да тествам XPath върху HTML, както и върху XML?
Да. Режимът XML спазва правилата за XML пространства от имена (namespaces). Режимът HTML е по-толерантен и позволява на прости пътища като //a да съвпадат с обикновени тагове.

Как работят XML пространствата от имена (namespaces)?
Префиксите на пространства от имена, декларирани във Вашия XML, могат да се използват в XPath, например //x:item. За пространства от имена по подразбиране, //item също следва декларацията на документа.

Защо дадена заявка може да изтече по време?
Много големи документи или твърде общи изрази могат да изискват много ресурси за изпълнение. Инструментът спира изпълнението след 2 секунди, за да остане страницата активна; прецизирайте пътя или опитайте с по-малък примерен файл.

Има ли ограничение за размера на документите, които мога да тествам?
Да, максималната дължина на входящия XML или HTML документ е 500 000 знака. За XPath израза ограничението е до 4000 знака. При надвишаване на тези лимити инструментът ще покаже съответното съобщение за грешка.