Как предотвратить сжатие lxml выпускных элементов? - PullRequest
0 голосов
/ 27 мая 2010

Имея следующий код 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>'

Ответы [ 3 ]

3 голосов
/ 27 мая 2010
>>> 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>'
2 голосов
/ 27 мая 2010

Почему ты хочешь? Оба являются эквивалентными с точки зрения модели данных XML.

1 голос
/ 18 февраля 2011

из документов

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>'
...