【问题标题】:XML Parse Error with invalid HTML code (Elementtree)带有无效 HTML 代码的 XML 解析错误 (Elementtree)
【发布时间】:2020-06-11 00:21:12
【问题描述】:

当我从一个较大的 xml 文件中解析下面的 xml 字符串时,我遇到了我认为无效的 HTML 字符代码,解析器输出以下错误消息。

错误信息是: ParseError: 引用无效字符数

我删除了描述正文的其余部分,并留下了导致错误的部分。如何让 elementtree 忽略这些无效的 HTML 字符代码或以某种方式处理它们?

代码和xml摘录如下:

XML: <dc:description> **(10&#410)** </dc:description>


import os
import html
import io
import sys
import xml.etree.ElementTree as ET

def process_file(file):

    parser=ET.XMLParser(encoding='utf-8')
    tree=ET.parse(file, parser=parser)


【问题讨论】:

    标签: python xml file parsing elementtree


    【解决方案1】:

    如何让 elementtree 忽略这些无效的 HTML 字符代码或以某种方式处理它们?

    你没有

    您正在尝试将 XML 工具应用于非 XML 数据。拒绝合作是妥当的。

    解决方案是先将数据固定为 XML,然后再尝试将其处理为 XML。手动执行此操作,或尝试通过在字符/字符串级别处理文档以编程方式执行此操作。

    另见How to parse invalid (bad / not well-formed) XML?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-10
      • 1970-01-01
      • 1970-01-01
      • 2021-02-08
      • 2011-07-18
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多