|
|
Opslået på 05/06/2018 14.27.09
|
|
|

1. XML Introduktion
XML (eXtensible Markup Language) refererer til et udvidelsesbart markupsprog, designet til at overføre og lagre data, og er blevet kernen i mange nye teknologier i dag med forskellige anvendelser inden for forskellige områder. Det er et uundgåeligt produkt af udviklingen af webben til et vist niveau, som har SGML's kerneegenskaber, HTML's enkle egenskaber og mange nye funktioner såsom klar og velstruktureret.
Test. XML-fil
<?xml version="1.0" kodning="utf-8"?> <catalog> <maxid>4</maxid> <login brugernavn="pytest" passwd='123456'> <caption>Python</caption> <item id="4"> <caption>Test</caption> </item> </login> <item id="2"> <caption>Zope</caption> </item> </catalog> For en detaljeret introduktion til XML, se venligst:http://www.w3school.com.cn/xmldom/dom_nodetype.asp
2. XML dokumentparsing
Der er tre almindelige metoder til at analysere XML i Python: den ene er xml.dom.*-modulet, som er en implementering af W3C DOM API'en, hvilket er meget velegnet, hvis du skal behandle DOM-API'en; Den anden er xml.sax.*-modulet, som er en implementering af SAX API'en, der ofrer bekvemmelighed for hastighed og hukommelsesforbrug, og SAX er et hændelsesbaseret API, hvilket betyder, at det kan behandle et enormt antal dokumenter "i luften" uden at skulle indlæse det helt i hukommelsen; Den tredje er xml.etree.ElementTree-modulet (ET for kort), som tilbyder et letvægts Python-lignende API, der er meget hurtigere end DOM, og der findes mange behagelige API'er, der kan bruges; sammenlignet med SAX tilbyder ET.iterparse også en "in the air"-behandlingsmetode, der er ikke behov for at indlæse hele dokumentet i hukommelsen, og den gennemsnitlige ydeevne for ET er lignende SAX. Dog er API'en lidt mere effektiv og nem at bruge.
2.1 xml.dom.*
Document Object Model (DOM) er et standard programmeringsinterface, som anbefales af W3C-organisationen til at håndtere udvidelige markup-sprog. Når en DOM-parser parser et XML-dokument, læser den hele dokumentet på én gang, gemmer alle elementerne i dokumentet i en træstruktur i hukommelsen, og derefter kan du bruge forskellige funktioner, som DOM leverer, til at læse eller ændre indholdet og strukturen i dokumentet, eller skrive det ændrede indhold til xml-filen. Brug xml.dom.minidom i Python til at parse xml-filen.
a. Få undertags b. Mærkater, der adskiller det samme tagnavn c. Få tag-attributværdien d. Hent data mellem labelpar
Udgang:
2.2 xml.etree.ElementTree
ElementTree blev skabt til at håndtere XML, og der findes to implementeringer i Python-standardbiblioteket: den ene er en ren Python-implementering, såsom xml.etree.ElementTree, og den anden er en hurtigere xml.etree.cElementTree. Bemærk: Prøv at bruge C-sproget til at implementere det, da det er hurtigere og bruger mindre hukommelse.
a. Gennemgå det næste lag af rodknuden b. Indeksadgang til individuelle tags, attributter og tekst c. Find det angivne tag under root d. Gennemgang af XML-filer e. Ændr XML-filen
Udgang:
Vedhæftet:
2.3 xml.sax.*
SAX er et begivenhedsdrevet API, der bruger SAX til at parse XML i to dele: parseren og hændelseshandleren.
Parseren er ansvarlig for at læse XML-dokumentet og sende begivenheder til hændelseshåndtereren, såsom elementstart- og elementslutbegivenheder
Hændelsesprocessoren er ansvarlig for at reagere på begivenhederne og behandle de overleverede XML-data
Almindelige scenarier:
(1) Behandle store dokumenter
(2) Kun en del af dokumentet er påkrævet, eller specifik information indhentes kun fra filen
(3) Jeg vil bygge min egen objektmodel
|
Tidligere:Løsning: Installationsprogrammet, der bruges til at installere Visual Studio, er ufuldstændigtNæste:VS Code-kode hurtige formateringsgenveje
|