XML, ali razširljivi označevalni jezik, se je uveljavil kot nepogrešljiv format za izmenjavo podatkov na spletu. Ko delaš z velikimi količinami podatkov ali obdeluješ API-odgovore, se pogosto srečaš z XML. V tem tutorialu ti bom pokazal, kako učinkovito obdelovati XML-podatke s Python. Na koncu bomo skupaj prebrali XML-podprt e-trgovinski katalog in izvlekli vsebovane informacije.
Najpomembnejši vpogledi
- XML je fleksibilen označevalni jezik za opisovanje in strukturiranje podatkov.
- Python z modulom xml.etree.ElementTree ponuja preprost način za obdelavo XML-podatkov.
- Za branje XML-podatkov je potrebno razumeti hierarhično zasnovo vozlišč in podvozlišč.
Navodila po korakih
Korak 1: Razumevanje XML-podatkov
Na začetku si oglej vzorec strukture XML-datoteke. XML uporablja vozlišča ( oznake ) in atribute za prikaz informacij.
Tukaj je katalog glavnih vozlišč, pod katerim so razporejena več produktov. Vsako produktno vozlišče ima svoje lastne podvozlišča, kot so ID, ime, cena in zaloga.

Korak 2: Uvoz XML-modula
Za delo z XML v Pythonu moraš uvoziti modul xml.etree.ElementTree. To ti omogoča branje in manipulacijo z XML-podatki.
Ko si dodal uvozni stavek v svoj kodo, si pripravljen za obdelavo.

Korak 3: Branje XML-datoteke
Zdaj moraš prebrati XML-datoteko, ki vsebuje podatke. To se izvede z uporabo ElementTree.
To prebere XML-datoteko in jo shrani v spremenljivko tree kot drevesno strukturo. Zdaj imaš dostop do celotne strukture.
Korak 4: Iskanje glavnega vozlišča
Da bi nadaljeval, potrebuješ korensko vozlišče XML-podatkov, ki je ključno za tvoje delo.
Korensko vozlišče predstavlja katalog, od katerega so odvisna vsa druga vozlišča.
Korak 5: Branje podatkov o izdelkih
Zdaj lahko v zanki iteriraš skozi produktna vozlišča in pridobiš podrobne informacije.
Ta koda ti vrne vse pomembne informacije o vsakem produktu v katalogu. Poskrbi, da dostop do lastnosti natančno ustreza imenu oznake.
Korak 6: Obdelava atributov (neobvezno)
XML omogoča uporabo atributov v vozliščih. Na primer, če imaš oznako izdelka z atributom, ga lahko pridobiš z ukazom get.
To ti vrne ID kot atribut.

Korak 7: Oblikovanje izhoda
Da bi imel boljši pregled nad izhodom podatkov, lahko informacije oblikuješ.
Ta struktura olajša razumevanje izluščenih podatkov.

Sklep – Učinkovito obvladovanje XML-obdelave s Pythonom
Na kratko si se naučil, kako lahko XML-podatke bereš in obdeluješ s Pythonom. Sedaj poznaš osnovno strukturo XML-datoteke, kako najti ključna vozlišča in kako učinkovito izvleči vsebovane informacije – vse to je bistveno za pomembne manipulacije podatkov v Pythonu.
Pogosto zastavljena vprašanja
Kako lahko obdelujem XML-podatke v Pythonu?Za branje in obdelavo XML-podatkov lahko uporabljaš modul xml.etree.ElementTree.
Ali lahko berem XML atribute?Da, z ukazom get lahko dostopaš do atributov, definiranih v XML oznakah.
Je ElementTree edini modul za XML v Pythonu?Obstajajo tudi drugi moduli, kot sta minidom in lxml, ki ponujajo različne funkcionalnosti.
Ali lahko sam spremenim XML-podatke?Da, XML-podatke lahko tudi spreminjaš, tako da dodajaš ali brišeš vozlišča.