在看《dive into python》有一章是對xml的處理,其中寫著
import sys
sys.setdefaultencoding('iso-8859-1')
sock = urllib.urlopen("")htmlsource = sock.read()
sock.close()
為什麼import sys後,然後使用sys.不會自動提示顯示出setdefaultencoding呢?之後搜尋了一下:
python的初始化指令碼site.py會把sys模組的setdefaultencoding方法刪除,python在初始化完畢之後,禁止使用者改變預設編碼。
以上內容引用至【python改變預設編碼】
還有就是在抓取到頁面後,需要對頁面進行乙個解碼動作(decode),完整的demo**將會如下所示:
#coding:utf-8
2: import urllib
3: import sys
4:
5: reload(sys)
6:
7: sys.setdefaultencoding('utf-8')
8:
9:print sys.getdefaultencoding()
10:
11: sock = urllib.urlopen("")
12: htmlsource = sock.read().decode('gbk')
13: sock.close()
14:
15:print htmlsource
Python 的編碼問題
我在爬取網頁解析的過程中出現了網頁內容解析不了的問題,雖然用記事本開啟是顯示正常的漢字和符號,但用winhex開啟就會出現亂碼的問題 把它放到cmd中也顯示亂碼 這個一般就是編碼問題,這種 編碼應該很可能是 utf 8 能在winhex中正常顯示漢字的應該是gb2312或者gbk編碼,所以用正規表示...
python的編碼問題
今天學習了python,作為乙個新手,對python的編碼問題仔細研究了一番,自己的理解如下 1 python 的檔案是以ascii編碼儲存,所以當python 檔案中有中文時 包括注釋 檔案開頭都要加 coding utf 8 或 coding gbk。2 python內部使用的都是unicode...
Python的編碼問題
python的編碼問題一般在有中文的情況下會出現。這裡的python檔案在windows環境下執行的。當python檔案不含中文時,無論.py檔案是anic ascii格式還是utf 8格式,在cmd中執行時都能得到正常的結果,但是.py檔案裡含中文時,直接編譯就會出現問題了。這裡主要有兩種情況 1...