正如我所看到的,當我們在Python腳本運行我可以編輯由xml.dom.minidom.parse加載的XML嗎?
from xml.dom.minidom import parse
myXML = parse('anything.xml')
,它加載「anything.xml」的內容,直到你離開的腳本或按Ctrl + d你的Python會話。
是否有可能在Python中爲這個加載的XML版本添加屬性值?
正如我所看到的,當我們在Python腳本運行我可以編輯由xml.dom.minidom.parse加載的XML嗎?
from xml.dom.minidom import parse
myXML = parse('anything.xml')
,它加載「anything.xml」的內容,直到你離開的腳本或按Ctrl + d你的Python會話。
是否有可能在Python中爲這個加載的XML版本添加屬性值?
parse
方法將爲您返回xml.dom.minidom.Document
的實例,您可以在其中調用xml.dom
文檔中列出的大量方法。這裏有一個小例子:
import xml.dom.minidom
d = xml.dom.minidom.parseString('<head>hello</head>')
d.getElementsByTagName('head')[0].setAttribute('joe', '2')
print d.toxml()
這增加了joe="2"
屬性的head
標籤:
<?xml version="1.0" ?><head joe="2">hello</head>
那麼,它不會修改XML文件?因爲我要解析一個文件,而不是字符串? – nightrider84
@ nightrider84:這個例子展示瞭如何修改通過解析文件/字符串創建的* document *對象。然後,您可以將該對象寫回到文件或其他文件中。請參閱文檔以瞭解寫入方法 –
還有一個問題。 [0] .setAttribute [0]是什麼意思?謝謝 – nightrider84
你的問題不明確。這不是緩存,而是XML已經加載。你想只更新那個對象,還是你想修改'anything.xml'? –
我不想修改原始的xml(anything.xml)我想修改解析(加載)的XML。 – nightrider84
http://lxml.de/ –