See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 75|Vastuse: 0

Kasuta XPathi XML-i ja HTML-dokumendi sisu hankimiseks

[Kopeeri link]
Postitatud3 päeva tagasi | | | |
XPath on tehnoloogia, mis täpselt ja tõhusalt määratleb ning eraldab vajaliku teabe puustruktuuri andmetest, nagu HTML ja XML.

XPathi ülevaade

XPath on keel, mida kasutatakse konkreetsete elementide ja atribuutide määratlemiseks ja eraldamiseks XML- või HTML-dokumendipuus. Kuna veebilehed koosnevad sageli HTML-ist, kasutatakse XPathi laialdaselt erinevates olukordades, nagu veebikraapimine, andmete otsimine ja XML-andmete otsing.

Tüüpiline kasutus on järgmine:

  • Andmete väljavõtmine veebikraapijates: XPathi kasutatakse konkreetsete andmete automaatseks allalaadimiseks, näiteks tooteinfo e-kaubanduse veebisaitidel või artiklite pealkirjade leidmiseks uudisteportaalidel.
  • XML-andmete otsing ja töötlemine: Ärisüsteemides ja andmelinkide töötlemises vahetatakse andmeid sageli XML-formaadis. XPathi abil saad tõhusalt vajaliku info suurtest XML-andmemahtudest välja võtta.
  • API vastuste parsing (XML-formaat): XML-põhiste API-de, nagu SOAP, kasutamisel kasutatakse XPathi vastuste andmete analüüsimiseks. See võimaldab kiiresti saada konkreetseid olekukoode ja tulemuste andmeid, parandades süsteemi integreerimise ja automatiseeritud töötlemise täpsust.

Tööriistasoovitus

XPathi õppimise ja kasutamise protsessis on levinumad tööriistad järgmised:

Chrome'i arendajatööriistad: Võimas tööriist, mis tuleb Chrome'i brauseriga, seda saab nimetada F12 klahvi vajutades. "Elements" paneelil saad kiiresti veebilehel HTML-elemente leida, hõljudes hiirega hiirega ja klõpsates, ning paremklõpsuga elemendil saab XPathi avaldise otse kopeerida, et seda oleks lihtne kontrollida ja testida. Näiteks e-kaubanduse tootelehte analüüsides saad kasutada Chrome'i arendajatööriistu, et kiiresti saada XPathi tootenimede, hindade ja muude elementide jaoks.
Firefox Developer Tools: Tuleb ka brauseriga, sarnaselt Chrome Developer Toolsile. Samuti võimaldab see hõlpsasti leida elemente oma lehel ning vaadata ja testida XPathi väljendeid. See on hea valik arendajatele, kes on harjunud Firefoxi brauserit kasutama.
Veebipõhised XPath testimistööriistad: Veebitööriistu nagu "XPath Tester" saab kasutada ilma installita ja neid saab kasutada veebilehe avamisega. Lihtsalt kleepi XML- või HTML-dokumendi sisu, sisesta XPathi avaldis ja vaata vastavustulemusi reaalajas. See tööriist sobib eriti hästi algajatele, et kiiresti alustada ja teha lihtsaid XPath harjutusi.
XPath Helper Plugin: Näiteks Chrome Browseri puhul, pärast XPath Helper plugina paigaldamist lisab see veebis sirvides brauseri liidesesse ujuva akna, kuvades praeguse hiireülekanne elemendi XPathi tee, ning XPathi avaldisi saab otse aknas muuta ja testida, mis parandab oluliselt arenduse efektiivsust.

XPath abstraktne süntaks

Vali sõlm

XPath kasutab teeavaldisi sõlmede valimiseks XML-dokumendis. Sõlmed valitakse rada või sammu järgides. Kõige kasulikumad teeavaldised on loetletud allpool:
avaldis
kirjeldus
SõlmnimiValib kõik selle sõlme laps-sõlmed.
/Vali juursõlmest (võta lapsõlm).
//Valib dokumendis sõlmed sobiva valiku praegusest sõlmest, sõltumata nende asukohast (võta järeltulijad sõlmed).
.Vali praegune sõlm.
..Vali praeguse sõlme vanemasõlm.
@Vali atribuut.

Allolevas tabelis oleme loetlenud mõned teekonna avaldised koos avaldiste tulemustega:
Teede avaldised
tulemus
raamatupoodVali kõik sõlmed nimega raamatupood.
/bookstore
Vali Root Element raamatupood.
Märkus: Kui tee algab edasise kaldkriipsuga ( / ), siis see rada esindab alati absoluutset teed elemendini!
Raamatupood/raamatValib kõik raamatu elemendid, mis on raamatupoe lapselemendid.
//bookValib kõik raamatu alamelemendid, sõltumata nende asukohast dokumendis.
Raamatupood//raamatVali kõik raamatuelemendid, mis on raamatupoe elemendi järeltulijad, sõltumata sellest, kus need raamatupoe all asuvad.
@langVali kõik lang-nimelised omadused.

Predikaadid

Predikaati kasutatakse konkreetse sõlme või kindla väärtusega sõlme leidmiseks.
Predikaat on paigutatud nurksulgudesse.
Allolevas tabelis loetleme mõned teeavaldised predikaatidega ning avaldiste tulemused:
Teede avaldised
tulemus
/bookstore/book[1]Vali esimene raamatu element, mis on osa raamatupoe lapselemendist.
/bookstore/book[last()]Valib viimase raamatu elemendi, mis on osa raamatupoe alamelemendist.
/bookstore/book[last()-1]Valib eelviimase raamatu elemendi, mis kuulub raamatupoe lapselemendi hulka.
/bookstore/book[position()<3]Vali esimesed kaks raamatu elementi, mis on raamatupoe elemendi lapselemendid.
pealkiri[@lang]Valib kõik pealkirjaelemendid, millel on omadus nimega lang.
pealkiri[@lang='eng']Valib kõik pealkirja elemendid, millel on lang atribuut inglise väärtusega.
/bookstore/book[price>35.00]Valib kõik raamatu elemendid raamatupoe elemendist ning hinnaelemendi väärtus peab olema suurem kui 35.00.
/bookstore/book[price>35.00]//titleValib kõik raamatu elemendi pealkirjaelemendid raamatupoe elemendis ning hinnaelemendi väärtus peab olema suurem kui 35.00.

Vali tundmatu sõlm

XPath wildcard'e saab kasutada tundmatute XML-elementide korjamiseks.
Wild card
kirjeldus
*Sobib iga elemendi sõlme.
@*Sobib iga atribuudi sõlme.
node()Sobib igat tüüpi sõlmedega.

Allolevas tabelis loetleme mõned teeavaldised ja nende tulemused:
Teede avaldised
tulemus
/bookstore/*Valib kõik raamatupoe elemendi lapseelemendid.
//*Valib kõik dokumendi elemendid.
pealkiri[@*]Valib kõik pealkirjaelemendid atribuutidega.

Vali mitu teed

Kasutades teekonna avaldises "|" Operaatorid, saate valida mitu teed.

Allolevas tabelis loetleme mõned teeavaldised ja nende tulemused:
Teede avaldised
tulemus
//book/title | //book/priceValib kõik raamatu elemendi pealkirja ja hinna elemendid.
pealkiri | hindVali dokumendis kõik pealkirja ja hinna elemendid.
/bookstore/book/title | //priceValib kõik raamatu elemendi pealkirjaelemendid, mis kuuluvad raamatupoe elementi, ning kõik hinnaelemendid dokumendis.

XPath funktsioon

Järgnevalt on kommenteeritud nimekiri XPath-spetsiifilistest täiendustest XPathi põhifunktsioonide ja XSLT poolt, sealhulgas kirjeldused, süntaksi, parameetrite nimekirjad, tulemustüübid ja allikad vastavates W3C soovitustes.

  • Boolean()
  • lagi()
  • choose()
  • concat()
  • sisaldab()
  • count()
  • current() XSLT-spetsiifiline
  • document() XSLT-spetsiifiline
  • element-saadaval()
  • false()
  • korrus()
  • format-number() XSLT spetsiifiline
  • function-available()
  • generate-id() XSLT-spetsiifiline
  • id()
  • key() XSLT-spetsiifiline
  • lang()
  • last()
  • kohalik-nimi()
  • nimi()
  • namespace-uri()
  • normalise-ruum()
  • not()
  • number()
  • positsioon()
  • round()
  • alustab()
  • string()
  • string-pikkus()
  • substring()
  • alamstring-pärast()
  • alamstring-before()
  • sum()
  • süsteemi-omadus() XSLT-spetsiifiline
  • Translate()
  • true()
  • unparsed-entity-url() XSLT-spetsiifiline

Praktilised testid

Ava Chrome ja saa kõigi A-vahekaardi linkide tekstisisu järgmise käsuga:
Nagu allpool näidatud:



Viide:Hüperlingi sisselogimine on nähtav.




Eelmine:[Näitekirjanik] (3) Automaatne testimine vea erandite avastamiseks
Järgmine:.NET/C# kutsub Azure Translatori tekstitõlke liidese teenust
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com