我正在尝试查找如何更改现有xml文件元素值的示例。
使用以下xml示例:
<book>
<title>My Book</title>
<author>John Smith</author>
</book>
如果我想在使用DOM的Python脚本中用'Jim Johnson'替换作者元素值'John Smith',我该怎么做呢?我试图在这方面寻找示例,但未能这样做。任何帮助将不胜感激。
此致 Rylic
答案 0 :(得分:5)
假设
s = '''
<book>
<title>My Book</title>
<author>John Smith</author>
</book>'''
DOM看起来像:
from xml.dom import minidom
dom = minidom.parseString(s) # or parse(filename_or_file)
for author in dom.getElementsByTagName('author'):
author.childNodes = [dom.createTextNode("Jane Smith")]
但我鼓励您研究ElementTree,它使得使用XML变得轻而易举:
from xml.etree import ElementTree
et = ElementTree.fromstring(s) # or parse(filename_or_file)
for author in et.findall('author'):
author.text = "Jane Smith"