法一:
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