Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 75|Răspunde: 0

Folosește XPath pentru a recupera conținut XML și HTML al documentelor

[Copiază linkul]
Postat peAcum 3 zile | | | |
XPath este o tehnologie care specifică și extrage corect și eficient informațiile necesare din datele despre structura arborelui, cum ar fi HTML și XML.

Prezentare generală XPath

XPath este un limbaj folosit pentru a specifica și extrage elemente și atribute specifice într-un arbore de documente XML sau HTML. Deoarece paginile web sunt adesea compuse din HTML, XPath este folosit pe scară largă în diverse scenarii, cum ar fi web scraping, recuperarea datelor și căutarea de date XML.

Utilizarea tipică este următoarea:

  • Extragerea datelor în web crawlere: XPath este folosit pentru a prelua automat date specifice, cum ar fi informații despre produse pe site-uri de comerț electronic sau titluri de articole pe site-uri de știri.
  • Căutare și procesare a datelor XML: În sistemele de afaceri și procesarea legăturilor de date, datele sunt adesea schimbate în format XML. Folosind XPath, poți extrage eficient informațiile necesare din cantități mari de date XML.
  • Parsing API Responses (format XML): Când se folosesc API-uri bazate pe XML, cum ar fi SOAP, XPath este folosit pentru a analiza datele de răspuns. Acest lucru îți permite să obții rapid coduri de stare specifice și date despre rezultate, îmbunătățind acuratețea integrării sistemului și a procesării automate.

Recomandare pentru unelte

În procesul de învățare și utilizare a XPath, uneltele comune includ:

Chrome Developer Tools: Un instrument puternic care vine cu browserul Chrome, îl poți chema apăsând tasta F12. În panoul "Elements", poți localiza rapid elemente HTML pe o pagină web prin apăsarea și click-ul, iar click dreapta pe un element poți copia direct expresia XPath pentru o verificare și testare ușoară. De exemplu, atunci când analizezi o pagină de produs de comerț electronic, poți folosi instrumente de dezvoltare Chrome pentru a obține rapid XPath pentru numele produselor, prețuri și alte elemente.
Firefox Developer Tools: De asemenea, vine cu browserul, similar cu Chrome Developer Tools. De asemenea, îți permite să localizezi ușor elemente pe pagină, precum și să vizualizezi și să testezi expresii XPath. Aceasta este o opțiune bună pentru dezvoltatorii obișnuiți să folosească browserul Firefox.
Instrumente online de testare XPath: Unelte online precum "XPath Tester" pot fi folosite fără instalare și pot fi folosite prin deschiderea unei pagini web. Pur și simplu lipește conținutul unui document XML sau HTML, introduci o expresie XPath și vezi rezultatele potrivirii în timp real. Acest instrument este deosebit de potrivit pentru începători care doresc să înceapă rapid și să facă exerciții simple XPath.
Pluginul XPath Helper: Luând ca exemplu Chrome Browser, după instalarea pluginului XPath Helper, acesta va adăuga o fereastră plutitoare interfeței browserului când navighezi pe web, afișând calea XPath a elementului curent cu mouse-over, iar tu poți edita și testa expresiile XPath direct în fereastră, îmbunătățind semnificativ eficiența dezvoltării.

Sintaxa abstractă XPath

Selectează un nod

XPath folosește expresii de cale pentru a selecta nodurile dintr-un document XML. Nodurile sunt selectate urmând o cale sau un pas. Cele mai utile expresii ale traseului sunt enumerate mai jos:
expresie
descriere
Nume de nodAlege toate nodurile copil ale acestui nod.
/Alege din nodul rădăcină (ia nodul copil).
//Selectează nodurile din document din nodul curent al selecției potrivite, indiferent de locația lor (să luăm nodurile descendente).
.Alege nodul curent.
..Alege nodul părinte al nodului curent.
@Alege un atribut.

În tabelul de mai jos, am enumerat câteva expresii de cale împreună cu rezultatele expresiilor:
Expresii de cale
rezultat
librărieAlege toate nodurile numite librărie.
/bookstore
Alege librăria cu element rădăcină.
Notă: Dacă calea începe cu o bară oblică înainte ( / ), atunci această cale reprezintă întotdeauna o cale absolută către un element!
librărie/carteAlege toate elementele de carte care sunt elemente de copil ale librăriei.
//bookAlege toate subelementele cărții, indiferent de poziția lor în document.
Librărie//carteSelectați toate elementele de carte care sunt descendenți ai elementului librăriei, indiferent unde se află sub librărie.
@langAlege toate proprietățile numite lang.

Predicate

Un predicat este folosit pentru a găsi un nod specific sau un nod care conține o valoare specificată.
Predicatul este încorporat între paranteze pătrate.
În tabelul de mai jos, listăm câteva expresii de cale cu predicate și rezultatele expresiilor:
Expresii de cale
rezultat
/bookstore/book[1]Alege primul element de carte care face parte din elementul copil al librăriei.
/bookstore/book[last()]Alege ultimul element de carte care face parte din subelementul librăriei.
/bookstore/book[last()-1]Alege penultimul element de carte care aparține elementului copil din librărie.
/bookstore/book[position()<3]Alege primele două elemente de carte care sunt elemente copil ale elementului librăriei.
Titlu[@lang]Alege toate elementele titlului care au o proprietate numită lang.
titlu[@lang='eng']Alege toate elementele titlului care au un atribut lang cu o valoare eng.
/bookstore/book[price>35.00]Alege toate elementele de carte ale elementului librăriei, iar valoarea elementului preț trebuie să fie mai mare de 35,00.
/bookstore/book[price>35.00]//titleAlege toate elementele de titlu ale elementului de carte din elementul librăriei, iar valoarea elementului de preț trebuie să fie mai mare de 35,00.

Selectează un nod necunoscut

Wildcard-urile XPath pot fi folosite pentru a prelua elemente XML necunoscute.
Wildcard
descriere
*Se potrivește cu orice nod element.
@*Se potrivește oricărui nod de atribut.
nod()Se potrivește cu orice tip de nod.

În tabelul de mai jos, listăm câteva expresii ale traseului și rezultatele acestor expresii:
Expresii de cale
rezultat
/bookstore/*Alege toate elementele copilului din elementul librăriei.
//*Selectează toate elementele din document.
titlu[@*]Alege toate elementele titlului cu atribute.

Alege mai multe căi

Prin folosirea cuvântului "|" în expresia de cale operatori, puteți alege mai multe căi.

În tabelul de mai jos, listăm câteva expresii ale traseului și rezultatele acestor expresii:
Expresii de cale
rezultat
//book/title | //book/priceAlege toate elementele de titlu și preț ale cărții.
titlu | prețAlege toate elementele de titlu și preț din document.
/bookstore/book/title | //priceSelectează toate elementele de titlu ale elementului de carte care aparțin elementului librăriei și toate elementele de preț din document.

Funcția XPath

Următoarea este o listă comentată cu adăugiri specifice XPath la XPath de funcții de bază XPath și XSLT, incluzând descrieri, sintaxă, liste de parametri, tipuri de rezultate și surse din recomandările corespunzătoare W3C.

  • boolean()
  • plafon()
  • alege()
  • concat()
  • conține()
  • count()
  • curent() specific XSLT
  • document() specific XSLT
  • element-disponibil()
  • false()
  • floor()
  • număr-format() specific XSLT
  • funcția disponibilă()
  • generate-id() specific XSLT
  • id()
  • key() specific XSLT
  • lang()
  • last()
  • nume-local()
  • Nume()
  • Spațiu de nume-uri()
  • Spațiul de normalizare()
  • not()
  • număr()
  • Poziție()
  • rotund()
  • începe-cu()
  • string()
  • lungime-coardă()
  • substring()
  • substring-după()
  • substring-înainte()
  • sum()
  • System-property() specific XSLT
  • translate()
  • adevărat()
  • unparsed-entity-url() specific XSLT

Teste practice

Deschide Chrome și obține conținutul textului tuturor linkurilor filei A cu următoarea comandă:
Așa cum se arată mai jos:



Referință:Autentificarea cu hyperlink este vizibilă.




Precedent:[Dramaturg] (3) Testare automată pentru a detecta excepțiile de eroare
Următor:.NET/C# apelează serviciul de interfață de traducere a textului Azure Translator
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com