我正在尝试使用xml
在python3
中写入libxml2
文件。我找不到有关python
的任何有关使用libxml
编写文件的相关文档。当我尝试编写经过xml
解析的libxml2
文件时,出现错误:
xmlDoc没有属性write
这里有人做过吗?我可以让它在Etree中正常工作,但是Etree不会遵守我需要的属性顺序。
答案 0 :(得分:3)
您可以使用saveFile()
或saveFileEnc()
。示例:
import libxml2
XML = """
<root a="1" b="2">XYZ</root>
"""
doc = libxml2.parseDoc(XML)
doc.saveFile("test.xml")
doc.saveFileEnc("test2.xml", "UTF-8")
我找不到关于Python API的任何好的文档。这是相应的C文档:http://xmlsoft.org/html/libxml-tree.html#xmlSaveFile。
答案 1 :(得分:1)
import libxml2
DOC = """<?xml version="1.0" encoding="UTF-8"?>
<verse>
<attribution>Christopher Okibgo</attribution>
<line>For he was a shrub among the poplars,</line>
<line>Needing more roots</line>
<line>More sap to grow to sunlight,</line>
<line>Thirsting for sunlight</line>
</verse>
"""
doc = libxml2.parseDoc(DOC)
root = doc.children
print root