如何查看lxml元素的文本表示?
如果我在用lxml解析一个XML文档,有没有办法查看某个元素的文本表示?
我试着这样做:print repr(node)
但是这输出的是
<Element obj at b743c0>
我可以用什么方法来查看这个节点,就像它在XML文件中存在的样子?有没有什么 to_xml
方法之类的?
1 个回答
50
来自 http://lxml.de/tutorial.html#serialisation
>>> root = etree.XML('<root><a><b/></a></root>')
>>> etree.tostring(root)
b'<root><a><b/></a></root>'
>>> print(etree.tostring(root, xml_declaration=True))
<?xml version='1.0' encoding='ASCII'?>
<root><a><b/></a></root>
>>> print(etree.tostring(root, encoding='iso-8859-1'))
<?xml version='1.0' encoding='iso-8859-1'?>
<root><a><b/></a></root>
>>> print(etree.tostring(root, pretty_print=True))
<root>
<a>
<b/>
</a>
</root>