Q:
在处理一个url提交的数据
在PC上,大多数浏览器会以utf8编码提交数据
“北京西”看起来是这样“%E5%8C%97%E4%BA%AC%E8%A5%BF”
在手机上,Mobile IE会以GBK提交数据
“北京西”看起来是这样“%B1%B1%BE%A9%CE%F7”
我的程序需要不加区别的处理这两种输入,我应该如何判断这是哪种编码,然后
统一地将他们转换为unicode呢?
===================
A:
>>> import chardet, urllib
>>> chardet.detect(urllib.unquote_plus('%E5%8C%97%E4%BA%AC%E8%A5%BF'))
{'confidence': 0.87624999999999997, 'encoding': 'utf-8'}
>>> chardet.detect(urllib.unquote_plus('%B1%B1%BE%A9%CE%F7'))
{'confidence': 0.98999999999999999, 'encoding': 'GB2312'}
chardet
http://chardet.feedparser.org/
No comments :
Post a Comment