Ich habe ein kleines Problem, und zwar will ich aus bestimmten Tags einer größeren XML-Datei eine CSV Datei erstellen.
EinAusschnitt aus der XML:
Code: Alles auswählen
<Merkmal ID="34747">
<Name>Volumen</Name>
<AddData>
<Wert MerkmalID="Kurzbezeichnung">Volumen</Wert>
<Wert MerkmalID="Beschreibung">= Inhalt einer Verpackung</Wert>
</AddData>
</Merkmal>
Wichtig ist vielleicht noch anzumerken, dass der oben stehende Ausschnitt noch 3 übergeordnete Hieraarchieebenen im Dokument besitzt.
Mein Problem ist einfach momentan, dass ich nicht weiß wie ich die einzelnen Tags ansprechen soll, da sie so ineinander verschachtelt sind.
Mein Baustelle:
Code: Alles auswählen
def _knoten_auslesen(knoten):
return eval("%s('%s')" % (knoten.getAttribute("BaseType")))
d = {}
baum = dom.parse("file.xml")
for eintrag in baum.firstChild.childNodes:
if eintrag.nodeName == "Merkmal":
schluessel = wert = None
for knoten in eintrag.childNodes:
if knoten.nodeName == "Merkmal ID":
schluessel = _knoten_auslesen(knoten)
elif knoten.nodeName == "Name":
wert1 = _knoten_auslesen(knoten)
elif knoten.NodeName =="Wert Merkmal ID":
wert2 = knoten_auslesen(knoten)
d[schluessel] = wert1, wert2
print d
Danke für Eure Tipps!