Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 13625|Atbildi: 0

[Avots] Python ievieš XML failu parsēšanu

[Kopēt saiti]
Publicēts 05.06.2018 14:27:09 | | |
1. XML Ievads

XML (eXtensible Markup Language) attiecas uz paplašināmu iezīmēšanas valodu, kas paredzēta datu pārsūtīšanai un glabāšanai, un mūsdienās ir kļuvusi par daudzu jaunu tehnoloģiju kodolu ar dažādiem pielietojumiem dažādās jomās. Tas ir neizbēgams tīmekļa attīstības produkts līdz noteiktam posmam, kam ir SGML pamatīpašības, vienkāršas HTML īpašības un daudzas jaunas funkcijas, piemēram, skaidras un labi strukturētas.

pārbaude. XML fails

<?xml version="1.0" encoding="utf-8"?>
<catalog>
    <maxid>4</maxid>
    <login username="pytest" passwd='123456'>
        <caption>Python</caption>
        <vienuma id="4">
            <caption>Pārbaude</caption>
        </item>
    </login>
    <vienuma id="2">
        <caption>Zope</caption>
    </item>
</catalog>

Detalizētu ievadu XML skatiet šeit:http://www.w3school.com.cn/xmldom/dom_nodetype.asp

2. XML dokumentu parsēšana

Python ir trīs izplatītas metodes, lai parsētu XML: viena ir xml.dom.* modulis, kas ir W3C DOM API ieviešana, kas ir ļoti piemērota, ja jums ir nepieciešams apstrādāt DOM API; Otrais ir xml.sax.* modulis, kas ir SAX API ieviešana, kas upurē ērtības ātruma un atmiņas nospieduma dēļ, un SAX ir uz notikumiem balstīta API, kas nozīmē, ka tā var apstrādāt milzīgu skaitu dokumentu "gaisā", pilnībā neielādējot to atmiņā; Trešais ir xml.etree.ElementTree modulis (saīsināti ET), kas nodrošina vieglu Python stila API, kas ir daudz ātrāks nekā DOM, un ir daudz patīkamu API, ko var izmantot, salīdzinot ar SAX, ET ET.iterparse nodrošina arī "gaisā" apstrādes metodi, nav nepieciešams ielādēt visu dokumentu atmiņā, un ET vidējā veiktspēja ir līdzīga SAX. Tomēr API ir nedaudz efektīvāka un ērtāk lietojama.

2.1 xml.dom.*

Dokumenta objekta modelis (DOM) ir standarta programmēšanas interfeiss, ko iesaka W3C organizācija, lai apstrādātu paplašināmās iezīmēšanas valodas. Kad DOM parsētājs parsē XML dokumentu, tas uzreiz nolasa visu dokumentu, saglabā visus dokumenta elementus koka struktūrā atmiņā, un pēc tam varat izmantot dažādas DOM nodrošinātās funkcijas, lai lasītu vai modificētu dokumenta saturu un struktūru vai rakstītu modificēto saturu xml failā. Izmantojiet xml.dom.minidom programmā Python, lai parsētu xml failu.

a. Apakštagu iegūšana
b. Etiķetes, kas atšķir vienu un to pašu taga nosaukumu
c. Taga atribūta vērtības iegūšana
d. Datu iegūšana starp etiķešu pāriem

Izvades:

2.2 xml.etree.ElementTree

ElementTree ir dzimis, lai apstrādātu XML, un Python standarta bibliotēkā ir divas implementācijas: viena ir tīra Python ieviešana, piemēram, xml.etree.ElementTree, un otra ir ātrāka xml.etree.cElementTree. Piezīmes: Mēģiniet izmantot C valodu, lai to īstenotu, jo tā ir ātrāka un patērē mazāk atmiņas.

a. Šķērsojiet nākamo saknes mezgla slāni
b. Apakšraksta piekļuve atsevišķiem tagiem, atribūtiem un tekstam
c. Atrodiet norādīto tagu zem saknes
d. XML failu šķērsošana
e. XML faila modificēšana

Izvades:

Pielikumā:

2.3 xml.sax.*

SAX ir notikumu vadīta API, kas izmanto SAX, lai parsētu XML divās daļās: parsētājs un notikumu apdarinātājs.

Parsētājs ir atbildīgs par XML dokumenta nolasīšanu un notikumu nosūtīšanu notikumu apdarinātājam, piemēram, elementa sākuma un elementa beigu notikumiem

Notikumu apstrādātājs ir atbildīgs par reaģēšanu uz notikumiem un nodoto XML datu apstrādi

Biežāk sastopamie scenāriji:

(1) Apstrādājiet lielus dokumentus

(2) Nepieciešama tikai daļa dokumenta vai tikai konkrēta informācija tiek iegūta no lietas

(3) Es vēlos izveidot savu objekta modeli





Iepriekšējo:Risinājums: Visual Studio instalēšanai izmantotā instalēšanas programma ir nepilnīga
Nākamo:VS Code koda ātrās formatēšanas īsceļi
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com