使用“丑陋”的 XML 读取现有文件并进行一些修改后,漂亮的打印不起作用。我试过了etree.write(FILE_NAME, pretty_print=True)
.
我有以下 XML:
<testsuites tests="14" failures="0" disabled="0" errors="0" time="0.306" name="AllTests">
<testsuite name="AIR" tests="14" failures="0" disabled="0" errors="0" time="0.306">
....
我这样使用它:
tree = etree.parse('original.xml')
root = tree.getroot()
...
# modifications
...
with open(FILE_NAME, "w") as f:
tree.write(f, pretty_print=True)
对我来说,这个问题直到我注意到这个小花絮才得到解决:
http://lxml.de/FAQ.html#why-doesn-t-the-pretty-print-option-reformat-my-xml-output
简洁版本:
使用以下命令读入文件:
>>> parser = etree.XMLParser(remove_blank_text=True)
>>> tree = etree.parse(filename, parser)
这将“重置”已经存在的缩进,允许输出正确生成它自己的缩进。然后像平常一样 Pretty_print :
>>> tree.write(<output_file_name>, pretty_print=True)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)