Python利用urllib2抓取網頁返回亂碼的問題


很多亂碼問題是編碼造成的,一般對於中文網站基本是UTF-8,GB2312,可以GB18030通吃。

另一個造成亂碼的原因是壓縮格式,很多規模較大的網站都是以gzip的壓縮格式輸出頁面的,所以在用BS解析之前需要先判斷該網頁是否經過壓縮,如果經過壓縮則先進行解壓操作。

import urllib2
import gzip
import StringIO

url = 'http://guomeidiyicheng.soufun.com/xiangqing/'
data = urllib2.urlopen(url).read()
data = StringIO.StringIO(data)
gzipper = gzip.GzipFile(fileobj=data)
html = gzipper.read()
print html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM