我想使用 lxml 整理一个复杂的 xml 文件。问题是它有很多有尾巴的元素。例如,有一个这样的 xml:
<body><part>n</part> attend </body>
我想把它整理成这样:
<body>
<part>n</part> attend
</body>
我首先尝试在 lxml 中应用 pretty_print 和 remove_blank_text 解析器。但它失败了。
import lxml.etree as ET
xml_doc = '<body><part>n</part> attend </body>'
parser = ET.XMLParser(remove_blank_text=True)
root = ET.fromstring(xml_doc, parser)
print(ET.tostring(root, pretty_print=True))
>>>b'<body><part>n</part> attend </body>\n'
然后,我再次尝试没有应用解析器无济于事。
import lxml.etree as ET
xml_doc = '<body><part>n</part> attend </body>'
root = ET.fromstring(xml_doc)
print(ET.tostring(root, pretty_print=True))
>>>b'<body><part>n</part> attend </body>\n'