Sono nuovo in Python/lxml Dopo aver letto il sito lxml ed essermi immerso in python, non sono riuscito a trovare la soluzione ai miei problemi n00b. Ho l'XML di esempio qui sotto:Python Lxml - Aggiunge un xml esistente con nuovi dati
---------------
<addressbook>
<person>
<name>Eric Idle</name>
<phone type='fix'>999-999-999</phone>
<phone type='mobile'>555-555-555</phone>
<address>
<street>12, spam road</street>
<city>London</city>
<zip>H4B 1X3</zip>
</address>
</person>
</addressbook>
-------------------------------
Sto cercando di aggiungere un bambino per l'elemento radice e scrivere l'intero file indietro come un nuovo XML o sovrascrivere il XML esistente. Attualmente tutto ciò che scrivo è una linea.
from lxml import etree
tree = etree.parse('addressbook.xml')
root = tree.getroot()
oSetroot = etree.Element(root.tag)
NewSub = etree.SubElement (oSetroot, 'CREATE_NEW_SUB')
doc = etree.ElementTree (oSetroot)
doc.write ('addressbook1.xml')
TIA
nota che ho modificato il vostro Q per formattare il codice XML e leggibile - durante la scrittura di un Q, che contiene il codice (o la come, ad esempio, XML), evidenzia questi blocchi e fai clic sull'icona che assomiglia a un quadratino di 0 e 1 sulla linea di icone appena sopra il testo: questo è il modo più semplice per ottenere la formattazione (basta far rientrare l'intero blocco di quattro spazi e assicurandosi che ci siano linee vuote prima e dopo è equivalente - questo è ciò che fa clic sull'icona per te, btw ;-). –
@Alex, grazie mille per imparare in così poco tempo +1000 a voi signore –