Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 75|Odpoveď: 0

Použite XPath na získanie obsahu XML, HTML dokumentov

[Kopírovať odkaz]
ZverejnenéPred 3 dňami | | | |
XPath je technológia, ktorá presne a efektívne špecifikuje a extrahuje požadované informácie zo štruktúry stromu, ako sú HTML a XML.

Prehľad XPath

XPath je jazyk používaný na špecifikáciu a extrakciu konkrétnych prvkov a atribútov v XML alebo HTML strome dokumentov. Keďže webové stránky sú často zložené z HTML, XPath sa široko používa v rôznych situáciách, ako je web scraping, vyhľadávanie dát a vyhľadávanie XML dát.

Typické použitie je nasledovné:

  • Extrakcia dát vo webových prehľadávačoch: XPath sa používa na automatické získavanie konkrétnych údajov, ako sú informácie o produktoch na e-commerce weboch alebo názvy článkov na spravodajských weboch.
  • Vyhľadávanie a spracovanie XML dát: V podnikových systémoch a spracovaní dátových spojení sa údaje často vymieňajú vo formáte XML. Použitím XPath môžete efektívne extrahovať potrebné informácie z veľkého množstva XML dát.
  • Parsing API Responses (XML formát): Pri používaní XML založených API, ako je SOAP, sa XPath používa na analýzu dát odpovedí. To vám umožní rýchlo získať konkrétne stavové kódy a údaje o výsledkoch, čím sa zvyšuje presnosť integrácie systému a automatizovaného spracovania.

Odporúčanie nástrojov

Pri učení sa a používaní XPath sú bežné nástroje:

Chrome Developer Tools: Výkonný nástroj, ktorý je súčasťou prehliadača Chrome, môžete ho zavolať stlačením klávesu F12. V paneli "Elements" môžete rýchlo nájsť HTML prvky na webovej stránke podržaním myši a kliknutím, a pravým kliknutím na prvok môžete priamo skopírovať výraz XPath pre jednoduchú overenie a testovanie. Napríklad pri analýze stránky e-commerce produktu môžete pomocou vývojárskych nástrojov Chrome rýchlo získať XPath pre názvy produktov, ceny a ďalšie prvky.
Firefox Developer Tools: Tiež prichádza s prehliadačom, podobne ako Chrome Developer Tools. Tiež vám umožňuje jednoducho nájsť prvky na vašej stránke, ako aj zobraziť a testovať výrazy XPath. Toto je dobrá voľba pre vývojárov, ktorí sú zvyknutí používať prehliadač Firefox.
Online nástroje na testovanie XPath: Online nástroje ako "XPath Tester" je možné používať bez inštalácie a otvorením webovej stránky. Stačí vložiť obsah XML alebo HTML dokumentu, zadať výraz XPath a vidieť výsledky zápasu v reálnom čase. Tento nástroj je obzvlášť vhodný pre začiatočníkov, ktorí chcú rýchlo začať a robiť jednoduché XPath cvičenia.
XPath Helper Plugin: Napríklad Chrome Browser, po nainštalovaní pluginu XPath Helper sa pri prehliadaní webu zobrazí plávajúce okno do rozhrania prehliadača, ktoré zobrazuje cestu XPath aktuálneho prvku myšou, a môžete upravovať a testovať XPath výrazy priamo v okne, čo výrazne zvyšuje efektivitu vývoja.

XPath abstraktná syntax

Vyberte uzol

XPath používa výrazy ciest na výber uzlov v XML dokumente. Uzly sa vyberajú podľa cesty alebo kroku. Najpoužiteľnejšie výrazy po cestách sú uvedené nižšie:
výraz
popis
NodenameVyberie všetky poduzly tohto uzla.
/Vyber z koreňového uzla (vezmi si podriadený uzol).
//Vyberá uzly v dokumente z aktuálneho uzla zodpovedajúceho výberu, bez ohľadu na ich umiestnenie (vezmite potomkovské uzly).
.Vyberte aktuálny uzol.
..Vyberte rodičovský uzol aktuálneho uzla.
@Vyberte si atribút.

V tabuľke nižšie sme spolu s výsledkami týchto výrazov uviedli niektoré výrazy po cestách:
Výrazy po cestách
výsledok
kníhkupectvoVyberte všetky uzly s názvom Bookstore.
/bookstore
Vyberte si kníhkupectvo root element.
Poznámka: Ak cesta začína priamym lomkom ( / ), potom táto cesta vždy predstavuje absolútnu cestu k prvku!
Kníhkupectvo/KnihaVyberá všetky knižné prvky, ktoré sú detskými prvkami kníhkupectva.
//bookVyberá všetky podprvky knihy, bez ohľadu na ich pozíciu v dokumente.
kníhkupectvo//knihaVyberte všetky knižné prvky, ktoré sú potomkami kníhkupectva, bez ohľadu na to, kde sa nachádzajú pod kníhkupectvom.
@langVyberte všetky vlastnosti pomenované lang.

Predikáty

Predikát sa používa na nájdenie konkrétneho uzla alebo uzla obsahujúceho určenú hodnotu.
Predikát je vložený v hranatých zátvorkách.
V tabuľke nižšie uvádzame niektoré cestné výrazy s predikátmi a výsledky týchto výrazov:
Výrazy po cestách
výsledok
/bookstore/book[1]Vyberte prvok prvej knihy, ktorý je súčasťou detského prvku kníhkupectva.
/bookstore/book[last()]Vyberie posledný knižný prvok, ktorý je súčasťou podprvku kníhkupectva.
/bookstore/book[last()-1]Vyberie predposledný knižný prvok, ktorý patrí detskému prvku kníhkupectva.
/bookstore/book[position()<3]Vyberte prvé dva knižné prvky, ktoré sú potomkami kníhkupectva.
Názov[@lang]Vyberá všetky prvky titulu, ktoré majú vlastnosť s názvom lang.
Názov[@lang='eng']Vyberá všetky titulné prvky, ktoré majú atribút lang s hodnotou eng.
/bookstore/book[price>35.00]Vyberie všetky knižné prvky kníhkupectva a hodnota tejto časti musí byť vyššia ako 35,00.
/bookstore/book[price>35.00]//titleVyberie všetky titulné prvky knižného prvku v kníhkupectve, pričom hodnota cenovej časti musí byť vyššia ako 35,00.

Vyberte neznámy uzol

XPath divoké karty môžu byť použité na vyberanie neznámych XML prvkov.
Zástupné
popis
*Zodpovedá ktorémukoľvek elementovému uzlu.
@*Zodpovedá ktorémukoľvek atribútovému uzlu.
node()Zodpovedá akémukoľvek typu uzla.

V tabuľke nižšie uvádzame niektoré výrazy po cestách a výsledky týchto výrazov:
Výrazy po cestách
výsledok
/bookstore/*Vyberá všetky detské prvky kníhkupectva.
//*Vyberá všetky prvky v dokumente.
Názov[@*]Vyberá všetky prvky titulu s atribútmi.

Vyberte si niekoľko ciest

Použitím "|" vo výraze po ceste operátori, môžete si vybrať niekoľko ciest.

V tabuľke nižšie uvádzame niektoré výrazy po cestách a výsledky týchto výrazov:
Výrazy po cestách
výsledok
//book/title | //book/priceVyberá všetky prvky názvu a ceny knihy.
Titul | cenaVyberte všetky prvky názvu a ceny v dokumente.
/bookstore/book/title | //priceVyberá všetky prvky názvu knihy, ktoré patria do kníhkupectva, a všetky cenové prvky v dokumente.

Funkcia XPath

Nasleduje komentovaný zoznam XPath-špecifických doplnkov k XPath jadrovými funkciami XPath a XSLT, vrátane popisov, syntaxe, zoznamov parametrov, typov výsledkov a zdrojov v príslušných odporúčaniach W3C.

  • boolean()
  • ceiling()
  • choose()
  • concat()
  • obsahuje()
  • count()
  • current() XSLT špecifické
  • dokument() XSLT špecifický
  • element-available()
  • false()
  • floor()
  • formát-number() XSLT špecifické
  • function-available()
  • generate-id() XSLT špecifické
  • id()
  • key() XSLT špecifické
  • lang()
  • last()
  • local-name()
  • meno()
  • Namespace-uri()
  • normalize-space()
  • not()
  • number()
  • position()
  • round()
  • začína-with()
  • string()
  • string-length()
  • substring()
  • substring-after()
  • substring-before()
  • sum()
  • system-property() špecifické pre XSLT
  • translate()
  • true()
  • unparsed-entity-url() XSLT špecifický

Praktické skúšky

Otvorte Chrome a získajte textový obsah všetkých odkazov na kartu A pomocou nasledujúceho príkazu:
Ako je uvedené nižšie:



Referencia:Prihlásenie na hypertextový odkaz je viditeľné.




Predchádzajúci:[Dramatik] (3) Automatizované testovanie na zachytenie výnimiek chýb
Budúci:.NET/C# volá službu textového prekladu Azure Translator
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com