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

Vaade: 13625|Vastuse: 0

[Allikas] Python rakendab XML-failide parseerimist

[Kopeeri link]
Postitatud 05.06.2018 14:27:09 | | |
1. XML Sissejuhatus

XML (eXtensible Markup Language) viitab laiendatavale märgistuskeelele, mis on loodud andmete edastamiseks ja salvestamiseks ning mis on tänapäeval paljude uute tehnoloogiate tuum, millel on erinevad rakendused erinevates valdkondades. See on vältimatu tulemus veebi arendamisest teatud tasemele, millel on SGML-i põhiomadused, HTML-i lihtsad omadused ning palju uusi funktsioone, nagu selge ja hästi struktureeritud.

test. XML-fail

<?xml version="1.0" encoding="UTF-8"?>
<catalog>
    <maxid>4</maxid>
    <login username="pytest" passwd='123456'>
        <caption>Python</caption>
        <item id="4">
            <caption>Test</caption>
        </item>
    </login>
    <item id="2">
        <caption>Zope</caption>
    </item>
</catalog>

XML-i põhjaliku sissejuhatuse leiate palun:http://www.w3school.com.cn/xmldom/dom_nodetype.asp

2. XML dokumendi analüüsimine

Pythonil on XML-i analüüsimiseks kolm levinud meetodit: üks on xml.dom.* moodul, mis on W3C DOM API rakendus ja sobib väga hästi DOM API töötlemiseks; Teine on xml.sax.* moodul, mis on SAX API rakendus, ohverdades mugavuse kiiruse ja mälumahu nimel, ning SAX on sündmuspõhine API, mis tähendab, et see suudab töödelda tohutul hulgal dokumente "õhus" ilma, et peaks neid täielikult mällu laadima; Kolmas on xml.etree.ElementTree moodul (lühidalt ET), mis pakub kerget Python-laadset API-d, mis on palju kiirem kui DOM, ning on palju meeldivaid API-sid, mida saab kasutada, võrreldes SAX-iga, ET ET.iterparse pakub samuti "õhus" töötlemismeetodit, pole vaja kogu dokumenti mällu laadida ning ET keskmine jõudlus on sarnane SAX-ile. Kuid API on veidi tõhusam ja lihtsam kasutada.

2.1 xml.dom.*

Dokumendi objektimudel (DOM) on standardne programmeerimisliides, mida soovitab W3C organisatsioon laiendatavate märgistuskeelte haldamiseks. Kui DOM-parser parseib XML-dokumendi, loeb ta kogu dokumendi korraga, salvestab kõik dokumendi elemendid puustruktuuri mällu ning seejärel saab kasutada DOM-i pakutavaid funktsioone dokumendi sisu ja struktuuri lugemiseks või muutmiseks või muudetud sisu kirjutamiseks xml-faili. Kasuta Pythonis xml.dom.minidom xml-faili parsimiseks.

a. Hangi alamsildid
b. Sildid, mis eristavad sama sildi nime
c. Hangi sildi atribuudi väärtus
d. Andmete kogumine sildipaaride vahel

Väljund:

2.2 xml.etree.ElementTree

ElementTree sündis XML-i haldamiseks ning Pythoni standardteegis on kaks rakendust: üks on puhas Python teostus, näiteks xml.etree.ElementTree, ja teine kiirem xml.etree.cElementTree. Märkus: proovi selle rakendamiseks kasutada C keelt, kuna see on kiirem ja tarbib vähem mälu.

a. Läbige juursõlme järgmine kiht
b. Alamindeksi ligipääs üksikutele siltidele, atribuutidele ja tekstile
c. Leia määratud silt juure alt
d. XML-failide läbimine
e. XML-faili muutmine

Väljund:

Lisatud:

2.3 xml.sax.*

SAX on sündmuspõhine API, mis kasutab SAX-i XML-i parsimiseks kaheks osaks: parseriks ja sündmuste käsitlejaks.

Parser vastutab XML-dokumendi lugemise ja sündmuste saatmise eest sündmuste käsitlejale, näiteks elemendi alguse ja elemendi lõpu sündmused

Sündmuste protsessor vastutab sündmustele reageerimise ja edastatud XML-andmete töötlemise eest

Levinud olukorrad:

(1) Suurte dokumentide töötlemine

(2) Nõutakse ainult osa dokumendist või konkreetset teavet saadakse ainult failist

(3) Ma tahan ehitada oma objektimudeli





Eelmine:Lahendus: Visual Studio paigaldamiseks kasutatud installer on puudulik
Järgmine:VS Code koodi kiire vormindamise otseteed
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