我正在使用 Python 读取 xml 文件。但是我的 xml 文件包含&
字符,因此在运行我的 Python 代码时,它会给出以下错误:
xml.parsers.expat.ExpatError: not well-formed (invalid token):
有没有办法忽略&
python的检查?
不,您不能忽略检查。您的“xml 文件”不是 XML 文件 - 要成为 XML 文件,必须对 & 符号进行转义。因此,任何旨在读取 XML 文件的软件都不会毫无错误地解析它。您需要更正生成此文件的软件,以便它生成正确的(“格式良好的”)XML。如果人们开始发送格式不正确的东西并且接收它的人试图修补它,那么使用 XML 进行交换的所有好处都将完全消失。
对我来说<?xml version='1.0' encoding='iso-8859-1'?>
,在字符串前面添加“”行就可以了。
>>> text = '''<?xml version="1.0" encoding="iso-8859-1"?>
... <seuss><fish>red</fish><fish>blu\xe9</fish></seuss>'''
>>> doc = elementtree.ElementTree.fromstring(text)
请参阅此页面 https://mail.python.org/pipermail/tutor/2006-November/050757.html