作者processior (korman)
看板Python
標題[問題]Content-Encoding:gzip 爬蟲如何解壓縮
時間Fri Oct 14 23:47:33 2016
最近在寫一隻爬蟲程式
遇到有些網站是採用gzip壓縮後再傳送資料
如果用python3 開啟
cj = Http_Cok.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
res = urllib.request.Request(html,headers = Header_data())
data = opener.open(res).read()
print(data)
都是十六進制的編碼,到網路上google 好像是要先解壓縮
否則beautifulsoup也無法解讀,畢竟不是utf-8 格式
網路上的解法試了也沒用大部分都是介紹pyton2的解法
不知道有人知道python3要如何解嗎??
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.9.179.118
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1476460056.A.DFE.html
推 kenduest: 用 requests 比較省事 10/15 02:35
推 laputaflutin: requests+1, 看這種等級的python api doc根本享受 10/15 08:08
推 eight0: data = gzip.decompress(data) 10/15 12:29
→ eight0: 用 requests 比較方便+1 10/15 12:29
→ kenduest: 發問者之前那篇就有人給他建議了,看起來應該是沒換 10/15 16:16
→ kenduest: 以前個人用 python 一開始還不知道 requests 也是 10/15 16:17
→ kenduest: 用 urllib, 真是搞死人,python 2,3 還稍微得改程式碼 10/15 16:17
→ kenduest: 用 requests 之後就一切輕鬆,且要 keep-alive 也簡單 10/15 16:17