收藏到: Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘 和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网 QQ书签 更多 Bookmark and Share

2009年4月13日星期一

Python解析中文xml问题

用Python解析带中文的xml文档,发生问题:

xml头:


Python在解析的时候报:

>>> xmldoc=minidom.parse('e:\\cc.xml')
Traceback (most recent call last):
File "", line 1, in
File "D:\Python26\lib\xml\dom\minidom.py", line 1918, in parse
return expatbuilder.parse(file)
File "D:\Python26\lib\xml\dom\expatbuilder.py", line 924, in parse
result = builder.parseFile(fp)
File "D:\Python26\lib\xml\dom\expatbuilder.py", line 207, in parseFile
parser.Parse(buffer, 0)
xml.parsers.expat.ExpatError: unknown encoding: line 1, column 30

将encoding去掉或者修改成UTF-8,这一步可以过了

------------------------------------
再次解析,又报新的错误:
在节点的属性中,有中文内容,
通过java的native2ascii,将整个文档转换成utf-8的编码方式,可以通过

------------------------------------
其实用编辑器(Notepad++,其他的一样)的 "转为UTF-8编码格式”重新保存一下即可。

刚才搞错了 “以UTF-8格式编码”和“转为UTF-8编码格式”之间差别

没有评论:

发表评论