有没有一种方法可以让QXmlStreamReader处理格式错误的XML

Is there a way to get QXmlStreamReader to cope with malformed XML?

本文关键字:处理 QXmlStreamReader 格式 错误 XML 方法 一种 有没有      更新时间:2023-10-16

我正在尝试解析网站中的一些值。为了实现这一点,我使用QXmlStreamReader。开始解析后,我收到XML错误:"预期为'=',但得到'>'。"。它破坏了这个格式错误的元素:

<tbody pageStartAt >

我想这是因为标准表示,标签的主要名称之后的所有内容都应该有一些值,如下所示:

<tbody pageStartAt="2" > - this is working.

我的问题是,有什么办法可以防止这种情况发生吗?我只想忽略没有值的子标记。我宁愿避免使用QWebKit——我认为这太过分了。

我发现的最简单的方法是使用HTMLTidy(感谢@MrEricSir的建议)它可以修复损坏的XML。一个降级是它添加了不必要的标签,如/body/等。