Nejdriv vsem diky za rady...a mam dalsi otazku:

reseni: mam xml soubor a chci do nej pridat element(additionalData)...tak  
aby byl pridan do kazdeho "data"

Kdyz mam xml soubor, ktery obsahuje(zkraceno)(vzor1.xml):
<neco>
        <tagA>Ahoj Svete</tagA>
</neco>
<data>
        <host>localhost</host>
        <user>root</user>
</data>

potom mam program:

 from xml.dom import minidom
def findTextNodes(nodeList, tagname, new):
        for subnode in nodeList:
                if subnode.nodeType == subnode.ELEMENT_NODE:
                        if (subnode.nodeType == subnode.ELEMENT_NODE and 
subnode.tagName ==  
tagname):
                                new = doc.createElement(new)
                                subnode.appendChild(new)
                                new.appendChild(doc.createTextNode("tento text 
doplnen"))
                        findTextNodes(subnode.childNodes, tagname, new)

doc = minidom.parse('vzor1.xml')
findTextNodes(doc.childNodes, "data", "AdditionalData")
print doc.toxml()


A vsechno funguje bez problemu... sice mi to tam prida podivne(ze neudela  
ten tabulator a na konci prechod na dalsi radek)
vysledek:
<neco>
        <tagA>Ahoj Svete</tagA>
</neco>
<data>
        <host>localhost</host>
        <user>root</user>
<AdditionalData>tento text doplnen</AdditionalData></data>



ALE kdyz zmenim XML na:
<neco>
        <tagA>Ahoj Svete</tagA>
</neco>
<data>
        <host>localhost</host>
        <user>root</user>
</data>
<data>
        <host>local</host>
        <user>toor</user>
</data>

tak uz pridavani nefunguje a hodi to opravdu zvlastni chybu:

Traceback (most recent call last):
   File "together1.py", line 26, in ?
     print doc.toxml()
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 47, in toxml
     return self.toprettyxml("", "", encoding)
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 59, in toprettyxml
     self.writexml(writer, "", indent, newl, encoding)
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 1746, in writexml
     node.writexml(writer, indent, addindent, newl)
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 821, in writexml
     node.writexml(writer,indent+addindent,addindent,newl)
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 821, in writexml
     node.writexml(writer,indent+addindent,addindent,newl)
   File "/home/pleva/lib/_xmlplus/dom/minidom.py", line 808, in writexml
     writer.write(indent+"<" + self.tagName)
TypeError: cannot concatenate 'str' and 'instance' objects

-z cehoz jsem pochopil, ze nemuze spojit tag, ale vubec nevim kvuli cemu...

Tak predem moc dik za rady, uz to vidim, ze to bude zas naka banalita :))

Lukas
_______________________________________________
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Odpovedet emailem