【问题标题】:Modify XML with Python用 Python 修改 XML
【发布时间】:2020-12-23 15:40:15
【问题描述】:

我有一个 XML 文件,我想对其进行修改并保存以备将来使用。我只想更改某些元素的文本,但是当我这样做时,它也会删除元素属性中的所有换行符:

<smth.xml
    attr1="name1"
    attr2="name2"
    smth="21315423"
    Debug="false" >

变成

<smth.xml attr1="name1" attr2="name2" smth="21315423" Debug="false">

我目前正在使用lxml lib 和parser = etree.XMLParser(encoding='utf-8')

【问题讨论】:

    标签: python python-2.7 lxml


    【解决方案1】:

    但是当我这样做时,它也会删除元素属性中的所有换行符

    这很正常。 XML 源代码中属性之间的换行符不是 XML 数据模型的一部分。

    您可以在手动编辑 XML 文件时键入它们,但规范并不要求 XML 解析器对它们进行任何关注,因为它们没有任何意义。所以几乎没有 XML 解析器可以做到(我不知道有哪个 XML 解析器可以做到)。

    我只能推荐一件事:克服它。不要试图留住他们,那是徒劳的、毫无意义的,而且是行不通的。

    加载 XML,从中读取数据,修改,保存。不要对不相关的细节过于激动。

    【讨论】:

      猜你喜欢
      • 2014-10-19
      • 2021-12-16
      • 2022-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多