【发布时间】:2012-10-14 13:22:21
【问题描述】:
我正在尝试解析一个非常大的 XML 文件并使用小写字母并删除标点符号。
问题是,当我尝试使用 cET parse function 为大文件解析此文件时,有时会遇到格式错误的标签或字符,从而引发 syntax error:
SyntaxError: not well-formed (invalid token): line 639337, column 4
注意:我几乎不可能读取文件,所以我看不出问题出在哪里。
我怎样才能跳过或解决这个问题?
from xml.etree import cElementTree as cET
for event, elem in cET.iterparse(xmlFile, events=("start", "end")):
...do something...
【问题讨论】:
-
我强烈推荐BeautifulSoup的API。
-
iterparse 遇到错误后,它会按定义停止。您可以检查事件堆栈,它将始终在错误处终止。