Python 字符編碼判斷

法一:

isinstance(s, str) 用來判斷是否爲一般字符串

isinstance(s, unicode) 用來判斷是否爲unicode


if type(str).__name__!="unicode":
str=unicode(str,"utf-8")
else:
pass


法二:

Python chardet 字符編碼判斷
使用 chardet 可以很方便的實現字符串/文件的編碼檢測。尤其是中文網頁,有的頁面使用GBK/GB2312,有的使用UTF8,如果你需要去爬一些頁面,知道網頁編碼很重要的,雖然HTML頁面有charset標籤,但是有些時候是不對的。那麼chardet就能幫我們大忙了。 

chardet實例
>>> import urllib
>>> rawdata = urllib.urlopen('http://www.google.cn/').read()
>>> import chardet
>>> chardet.detect(rawdata)
{'confidence': 0.98999999999999999, 'encoding': 'GB2312'}
>>>chardet可以直接用detect函數來檢測所給字符的編碼。函數返回值爲字典,有2個元數,一個是檢測的可信度,另外一個就是檢測到的編碼。 

chardet 安裝
下載chardet後,解壓chardet壓縮包,直接將chardet文件夾放在應用程序目錄下,就可以使用import chardet開始使用chardet了。 

或者使用setup.py安裝文件,將chardet拷貝到Python系統目錄下,這樣你所有的python程序只要用import chardet就可以了。 

python setup.py install參考
chardet官網 http://chardet.feedparser.org/
chardet下載頁面:http://chardet.feedparser.org/download/

from:http://www.pythonclub.org/modules/chardet
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章