Python modify an xml file
I have this xml model.
link text
So I have to add some node (see the text commented) to this file. How I can do it?
I have writed this partial code but it doesn't work:
xmldoc=minidom.parse(directory)
child = xmldoc.createElement("map")
for node in xmldoc.getElementsByTagName("Environment"):
开发者_StackOverflow中文版 node.appendChild(child)
Thanks in advance.
I downloaded your sample xml file and your code works fine. Your problem is most likely with the line: xmldoc=minidom.parse(directory)
, should this not be the path to the file you are trying to parse not to a directory? The parse()
function parses an XML file it does not automatically parse all the XML files in a given directory.
If you change your code to something like below this should work fine:
xmldoc=minidom.parse("directory/model_template.xml")
child = xmldoc.createElement("map")
for node in xmldoc.getElementsByTagName("Environment"):
node.appendChild(child)
If you then execute the statement: print xmldoc.toxml()
you will see that the map
element has indeed been added to the Environment
element: <Environment><map/></Environment>
.
精彩评论