2013-07-28 14 views
11

Chcę dodać węzeł potomny z atrybutami do określonego znacznika. mój xml jestdodaj element z atrybutami w pytniku minidom

<deploy> 
</deploy> 

i wyjście powinno być

<deploy> 
    <script name="xyz" action="stop"/> 
</deploy> 

dotąd mój kod to:

dom = parse("deploy.xml") 
script = dom.createElement("script") 
dom.childNodes[0].appendChild(script) 
dom.writexml(open(weblogicDeployXML, 'w')) 
script.setAttribute("name", args.script) 

Jak mogę dowiedzieć się, jak znaleźć wdrożyć tag i dołączyć węzeł podrzędny z atrybuty?

Odpowiedz

13

xml.dom.Element.setAttribute

xmlFile = minidom.parse(FILE_PATH) 

for script in SCRIPTS: 

    newScript = xmlFile.createElement("script") 

    newScript.setAttribute("name" , script.name) 
    newScript.setAttribute("action", script.action) 

    newScriptText = xmlFile.createTextNode(script.description) 

    newScript.appendChild(newScriptText ) 
    xmlFile.childNodes[0].appendChild(newScript) 

print xmlFile.toprettyxml() 

Plik wyjściowy:

<?xml version="1.0" ?> 
<scripts> 
    <script action="list" name="ls" > List a directory </script> 
    <script action="copy" name="cp" > Copy a file/directory </script> 
    <script action="move" name="mv" > Move a file/directory </script> 
    . 
    . 
    . 
</scripts> 
+0

William dzięki za odpowiedzi na ten question.really pomóc pełny –

Powiązane problemy