Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 75|Отговор: 0

Използвайте XPath за извличане на XML, HTML съдържание на документи

[Копирай линк]
Публикувано вПреди 3 дни | | | |
XPath е технология, която точно и ефективно специфицира и извлича необходимата информация от данни за дървесна структура, като HTML и XML.

Преглед на XPath

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

Типичната употреба е следната:

  • Извличане на данни в уеб търсечи: XPath се използва за автоматично извличане на конкретни данни, като информация за продукти в електронни търговски сайтове или заглавия на статии в новинарски сайтове.
  • Търсене и обработка на XML данни: В бизнес системите и обработката на връзки с данни данните често се обменят в XML формат. С помощта на XPath можете ефективно да извлечете необходимата информация от големи количества XML данни.
  • Анализ на API отговори (XML формат): При използване на XML-базирани API-та, като SOAP, XPath се използва за парсиране на отговорни данни. Това ви позволява бързо да получите конкретни статусни кодове и данни за резултати, подобрявайки точността на системната интеграция и автоматизираната обработка.

Препоръка за инструменти

В процеса на учене и използване на XPath често срещани инструменти включват:

Инструменти за разработчици на Chrome: Мощен инструмент, който идва с браузъра на Chrome, можете да го повикате, като натиснете клавиша F12. В панела "Elements" можете бързо да намерите HTML елементи на уеб страница, като задържите курсора и кликате, а с десен бутон върху елемент можете директно да копирате XPath израза за лесна проверка и тестване. Например, при анализ на страница за продукти в електронната търговия, можете да използвате инструменти за разработчици на Chrome, за да получите бързо XPath за имена на продукти, цени и други елементи.
Firefox Developer Tools: Идва и с браузъра, подобно на Chrome Developer Tools. Също така ви позволява лесно да намирате елементи на страницата си, както и да преглеждате и тествате XPath изрази. Това е добра опция за разработчици, които са свикнали да използват браузъра Firefox.
Онлайн инструменти за тестване на XPath: Онлайн инструменти като "XPath Tester" могат да се използват без инсталация и чрез отваряне на уеб страница. Просто поставете съдържанието на XML или HTML документ, въведете XPath израз и вижте резултатите от съвпадението в реално време. Този инструмент е особено подходящ за начинаещи, за да започнат бързо и да изпълняват прости XPath упражнения.
XPath Helper плъгин: Като пример Chrome Browser, след инсталиране на плъгина XPath Helper, той добавя плаващ прозорец към браузъра при сърфиране в интернет, показващ пътя на XPath на текущия елемент за мишката и можете да редактирате и тествате XPath изрази директно в прозореца, което значително подобрява ефективността на разработката.

Синтаксис на XPath Abstract

Изберете възел

XPath използва пътни изрази, за да избере възли в XML документ. Възлите се избират чрез следване на път или стъпка. Най-полезните изрази за пътища са изброени по-долу:
изразяване
описание
NodenameИзбира всички дъщерни възли на този възел.
/Изберете от коренния възел (вземете child node).
//Избира възли в документа от текущия възел на съответстващия избор, независимо от тяхното местоположение (вземете потомствени възли).
.Изберете текущия възел.
..Изберете родителския възел на текущия възел.
@Изберете атрибут.

В таблицата по-долу сме изброили някои пътни изрази заедно с резултатите от тези изрази:
Пътни изрази
Резултат
книжарницаИзберете всички възли с имена bookstore.
/bookstore
Изберете книжарница с коренов елемент.
Забележка: Ако пътят започва с напреднал наклон ( / ), тогава този път винаги представлява абсолютен път към елемент!
Книжарница/КнигаИзбира всички елементи на книгата, които са детски елементи на книжарницата.
//bookИзбира всички поделементи на книгата, независимо от тяхната позиция в документа.
книжарница//книгаИзберете всички елементи на книгата, които са потомци на елемента на книжарницата, независимо къде се намират под книжарницата.
@langИзберете всички имоти с име lang.

Предикати

Предикат се използва за намиране на конкретен възел или възел, съдържащ определена стойност.
Предикатът е вграден в квадратни скоби.
В таблицата по-долу изброяваме някои пътни изрази с предикати и резултатите от тези изрази:
Пътни изрази
Резултат
/bookstore/book[1]Изберете първия елемент от книгата, който е част от детския елемент на книжарницата.
/bookstore/book[last()]Избира последния елемент от книгата, който е част от поделемента на книжарницата.
/bookstore/book[last()-1]Избира предпоследния елемент от книгата, който принадлежи на детския елемент на книжарницата.
/bookstore/book[position()<3]Изберете първите два елемента от книгата, които са детски елементи на елемента на книжарницата.
Заглавие[@lang]Избира всички елементи на титула, които имат имот с име lang.
title[@lang='eng']Избира всички заглавни елементи, които имат lang атрибут с eng стойност.
/bookstore/book[price>35.00]Избира всички елементи на книжарницата, а стойността на ценовия елемент трябва да е по-голяма от 35.00.
/bookstore/book[price>35.00]//titleИзбира всички заглавни елементи на елемента на книгата в елемента книжарница, а стойността на ценовия елемент трябва да е по-голяма от 35.00.

Изберете неизвестен възел

XPath уайлдкарти могат да се използват за откриване на неизвестни XML елементи.
Заместващи
описание
*Съвпада с всеки елементен възел.
@*Съвпада с всеки атрибутен възел.
node()Съвпада с всеки тип възел.

В таблицата по-долу изброяваме някои пътни изрази и резултатите от тези изрази:
Пътни изрази
Резултат
/bookstore/*Избира всички детски елементи на елемента на книжарницата.
//*Избира всички елементи в документа.
Заглавие[@*]Избира всички елементи на заглавието с атрибути.

Изберете няколко пътя

Като използвате "|" в израза за пътя Оператори, можете да изберете няколко пътя.

В таблицата по-долу изброяваме някои пътни изрази и резултатите от тези изрази:
Пътни изрази
Резултат
//book/title | //book/priceИзбира всички елементи на заглавие и цена в елемента на книгата.
Заглавие | ценаИзберете всички елементи на заглавие и цена в документа.
/bookstore/book/title | //priceИзбира всички заглавни елементи на елемента на книгата, които принадлежат към елемента на книжарницата, както и всички ценови елементи в документа.

XPath функция

Следва коментиран списък с XPath-специфични добавки към XPath от основните XPath функции и XSLT, включително описания, синтаксис, списъци с параметри, типове резултати и източници в съответните препоръки на W3C.

  • Булев()
  • Таван()
  • choose()
  • concat()
  • съдържа()
  • count()
  • current() специфичен за XSLT
  • document() специфичен за XSLT
  • element-available()
  • false()
  • floor()
  • format-number() специфичен за XSLT
  • функция-налична()
  • generate-id() XSLT специфичен
  • id()
  • key() XSLT специфичен
  • lang()
  • последни()
  • местно име()
  • name()
  • namespace-uri()
  • нормализиране на пространството()
  • не()
  • число()
  • позиция()
  • round()
  • започва с()
  • string()
  • дължина на струна()
  • substring()
  • substring-after()
  • substring-before()
  • sum()
  • system-property() специфичен за XSLT
  • Преводи()
  • вярно()
  • unparsed-entity-url() специфичен за XSLT

Практически тестове

Отвори Chrome и получи текстовото съдържание на всички връзки към таба A със следната команда:
Както е показано по-долу:



Препратка:Входът към хиперлинк е видим.




Предишен:[Драматург] (3) Автоматизирано тестване за откриване на изключения при грешки
Следващ:.NET/C# извиква услугата за превод на текст Azure Translator
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com