HTTP請求頭Accept-encoding: gzip信息告訴服務器,如果它有任何新數據要發送給時,請以壓縮的格式發送。如果服務器支持壓縮,它將返回由 gzip 壓縮的數據並且使用Content-encoding: gzip頭信息標記。對於壓縮后的數據,python如何解壓?
httplib2自帶gzip和inflate解壓
httplib沒有gzip解壓功能,需要額外進行gzip解壓,方法:
#!/usr/bin/env python # encoding=utf-8 import urllib2, httplib import StringIO, gzip #解壓gzip def gzdecode(data) : compressedstream = StringIO.StringIO(data) gziper = gzip.GzipFile(fileobj=compressedstream) data2 = gziper.read() # 讀取解壓縮后數據 return data2