阅读,修改xml,然后使用python

时间:2018-09-25 13:55:15

标签: python xml xmltodict dicttoxml

以下是我要执行的步骤:

  1. 以字典形式读取xml文件

    import xmltodict
    
    with open("example.xml") as sxml:
        data = xmltodict.parse(sxml.read())
    
  2. 更改值

    data["key"]["key1"] = "some value"
    
  3. 我想将更改保存在 example.xml 文件中,或者我想创建一个新文件并保存更改。

我该怎么办?

2 个答案:

答案 0 :(得分:1)

README之后,我们可以轻松完成

with open('example.xml', 'w') as result_file:
    result_file.write(xmltodict.unparse(data))

如果您要覆盖 example.xml

with open('result.xml', 'w') as result_file:
    result_file.write(xmltodict.unparse(data))

如果要创建新文件 result.xml

答案 1 :(得分:1)

简单答案:

from lxml import etree
readfile=open('yourxmlfile.xml','r')
rstring = readfile.read()
readfile.close()
parser=etree.XMLParser(strip_cdata=False)
tree = etree.XML(rstring,parser)
root = tree
#make some edits to root here
wfile = open('yourxmlfileoutput.xml','w')
wfile.write(etree.tostring(root))
wfile.close()
可以在xml模块上找到

docs here