xml.etree. xmlsyntaxerror: Input is not proper UTF-8,指示编码?&l



我有一个xml文件,其中包含200万个观察值,我想将其转换为csv,但我得到下面的错误。

File "srclxmlparser.pxi", line 609, in lxml.etree._ParserContext._handleParseResult
File "srclxmlparser.pxi", line 618, in lxml.etree._ParserContext._handleParseResultDoc
File "srclxmlparser.pxi", line 728, in lxml.etree._handleParseResult
File "srclxmlparser.pxi", line 657, in lxml.etree._raiseParseError
File "input/stackoverflow.com/Posts.xml", line 9 lxml.etree.XML
SyntaxError: Input is not proper UTF-8, indicate encoding ! Bytes: 0xFC 0x74 0xFC 0x70, line 9, column 360

我已经包含了encoding= "utf-8"但我不确定这个错误的来源是什么。有谁能帮忙吗?

我也尝试了下面的代码,它给了我类似的编码错误。

from lxml import etree
parser = etree.XMLParser(recover=True)
etree.fromstring(filename, parser=parser)
error: xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 9, column 359

我能够通过添加encoding= 'latin1'并稍微改变我的代码来消除这个错误。

context = etree.iterparse(sourcefilename, events=('end',), tag='row',encoding= "latin1"

然而,我面临着另一个问题

lxml.etree。XMLSyntaxError: xmlParseEntityRef:没有名称,第26451行,第2887列

显然是因为有一些无效的字符,我不知道应该如何替换它们。

相关内容

最新更新