【问题标题】:How to prevent lxml prom compacting elements?如何防止 lxml 舞会压缩元素?
【发布时间】:2010-05-27 13:06:38
【问题描述】:

具有以下 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>'

【问题讨论】:

    标签: python xml xml-serialization lxml elementtree


    【解决方案1】:
    >>> 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】:

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

      【讨论】:

      • 是的,但在测试的情况下(这是我所做的),模型的字符串表示可能很重要。
      【解决方案3】:

      来自文档

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

      【讨论】:

        猜你喜欢
        • 2014-10-29
        • 2012-03-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多