XML Datei Manipulieren


Oetzicool

Erfahrenes Mitglied
Hey Leute ich will mich Python ein XML File einlesen und einen speziellen Knoten Manipulieren. Das klappt aber nicht so wie gewünscht.
Der Aufbau meiner XML Datei sieht folgendermaßen aus:
Code:
<Liste>
   <Eintrag>
        <name>Test</name>
        <Info>
              <user>root</user>
              <group>root</group>
        </Info>
        <Info>
              <user>Login</user>
              <group>public</group>
        </Info>
    </Eintrag>
</Liste>
Ich würde z.b. nur der den Wert zwischen <group> ändern und hab es mal folgendermaßen probiert:
Code:
import xml.dom.minidom as dom
 
 def loadXML( filename ):
    tree = dom.parse( filename )
  
    tagElements = tree.getElementsByTagName('group')
    for e in tagElements:
          for node in e.childNodes:
                node.data = 'admin'
 loadXML( 'login.xml' )
Das klappt aber nicht...nun wollte ich fragen ob des so überhaupt richtig ist bzw. ob es ne bessere Alternative gibt die Daten
zu manipulieren. Danke schonmal :)
 

deepthroat

Erfahrenes Mitglied
Hi.

Was meinst du mit "es klappt nicht"?

Hast du dir denn mal das XML ausgeben lassen?
Python:
print tree.toxml()
Ergibt:
XML:
<?xml version="1.0" ?><Liste>
   <Eintrag>
        <name>Test</name>
        <Info>
              <user>root</user>
              <group>admin</group>
        </Info>
        <Info>
              <user>Login</user>
              <group>admin</group>
        </Info>
    </Eintrag>
</Liste>
Gruß
 
Zuletzt bearbeitet von einem Moderator:

Oetzicool

Erfahrenes Mitglied
Ja klar sorry hab gedacht er schreibt es gleich in die XML File...war ein Denkfehler trotzdem danke für die schnelle und hilfreiche Antwort :)