0

具有以下 Python 代码:

>>> from lxml import etree
>>> root = etree.XML("<a><b></b></a>")
>>> etree.tostring(root)
'<a><b/></a>'

如何强制 lxml 使用“长”版本?

>>> etree.tostring(root)
'<a><b></b></a>'
4

3 回答 3

3
>>> import lxml.html
>>> html = lxml.html.fromstring('<a><b></b></a>')
>>> lxml.html.tostring(html)
'<a><b></b></a>'

混合也有效:

>>> from lxml import etree
>>> import lxml.html
>>> xml = etree.XML('<a><b/></a>')
>>> lxml.html.tostring(xml)
'<a><b></b></a>'
于 2010-05-27T18:12:19.060 回答
2

你为什么想要?两者在 XML 的数据模型方面是等价的。

于 2010-05-27T14:08:53.713 回答
1

从文档

http://lxml.de/tutorial.html#serialisation

    from lxml import etree
    xml = etree.XML('<a><b/></a>')
    etree.tostring(xml, method='html')
    '<a><b></b></a>'
于 2011-02-18T19:53:37.887 回答