【问题标题】:Handle ill formed XML in Python在 Python 中处理格式错误的 XML
【发布时间】:2015-04-19 06:31:10
【问题描述】:

必须处理一堆格式不正确的 XML 文件。 它们的格式不正确,因为在许多子项中,属性名称有一个空格:

<...>
    <bar attr1="..." attr xy="..."> 
        foo
    </bar>
</...>

有没有合适的方法来处理这个问题? 目前我正在使用 Python ElementTree 进行解析。

(我猜是空白是问题,错误信息指向空白。

cElementTree.ParseError: not well-formed (invalid token): line 435, column 214

据我了解,它被解释为缺少价值的属性)

我知道在解析错误的内容之前有可能只替换它。

【问题讨论】:

    标签: python xml-parsing


    【解决方案1】:

    使用漂亮的汤,或带有漂亮汤后端的 lxml。但是请注意,漂亮的汤很可能会将其中带有空格的“属性名称”解析为两个属性。

    另一种方法是先使用正则表达式来修正您的输入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多