python Python 解析xml文件出现错误xml.parsers.expat.ExpatError: unknown encoding 的解决


python 解析xml文件出现错误:xml.parsers.expat.ExpatError: unknown encoding: line 1, column 30

这是由于编码问题。

原因说明:

shell环境的 LANG=zh_CN.UTF-8
执行一个程序,生成了一个XML文件,在程序中将xml文件的编码设置成了GB2312,如“”。
然后使用xml.etree.ElementTree解析这个xml文件,就出现了错误:“xml.parsers.expat.ExpatError: unknown encoding: line 1, column 30”。

实际上,由于LANG的作用,程序生成XML文件编码是UTF-8,并不是GB2312,所以解析时出现了错误。
(查看文本文件编码可以在vim下执行 :set fileencoding 来查看。)

解决办法:

将XML文件编码转换为GB2312,例如使用 iconv 命令,
或者
修改XML文件的编码为UTF-8,如:“


你可能感兴趣的:(Python,编程)