【发布时间】:2017-10-12 17:26:24
【问题描述】:
我正在使用PDFminer,但它包含一个错误并且我得到以下无效的 XML 文件:
<?xml version="1.1" encoding="UTF-8"?>
<string size="16">ô‚ÌfƇ*š]Ö[</string>
当我尝试使用 ElementTree 解析它时,我收到以下错误:
bookXml = xml.etree.ElementTree.parse(filename)
File "C:\Users\User\Anaconda3\lib\xml\etree\ElementTree.py", line 1196, in parse
tree.parse(source, parser)
File "C:\Users\User\Anaconda3\lib\xml\etree\ElementTree.py", line 597, in parse
self._root = parser._parse_whole(source)
xml.etree.ElementTree.ParseError: reference to invalid character number: line 1, column 36
我认为处理这种情况的最好方法是先修复 XML,但是如何?
【问题讨论】:
-
问题似乎是
&#2;(和其他一些)等于U+0002,AFAIK 不是 XML 文件中的有效字符。 -
哦,XML版本是
"1.1"!!你不是每天都能看到的。那我猜U+0002毕竟是正确的,但是你很难找到兼容的工具......