In XML Dateien können Daten strukturiert abgelegt werden und werden als
Datenaustauschformat häufig verwenden. Dabei ist ein einfacher Zugriff
auf die Daten wichtig, wie das bei Python aussieht möchte ich in diesem
Beitrag euch erklären.
Möchte an dieser Stelle nur ein kurzes Beispiel zeigen wie einfach die
XML Bearbeitung mit dem Python lxml Modul funktioniert.
Hier im Beispiel werden nur Daten von einer XML ausgegeben:
Code
- #!/usr/bin/python3
- # -*- coding: utf-8 -*-
- from lxml import etree
- xmlData = etree.XML('''
- <periodensystem>
- <element>
- <symbol>H</symbol>
- <ordungszahl>1</ordungszahl>
- </element>
- <element>
- <symbol>He</symbol>
- <ordungszahl>2</ordungszahl>
- </element>
- </periodensystem>''')
- messages = xmlData.findall("element")
- for msg in messages:
- msgladung = msg.findtext("ordungszahl")
- msgstoff = msg.findtext("symbol")
- print ('Element {0} hat die Ordungszahl {1}'.format(msgstoff, msgladung))
Die Ausgabe sieht so aus:
Element H hat die Ordungszahl 1
Element He hat die Ordungszahl 2
Das Beispiel funktioniert mit Python 2.x und 3.x. Die XML Daten lässt
sich auch als Datei einlesen.
Das Modul lxml wird in Debian so installiert: