用python模擬登錄知乎,爬回來的是亂碼?
12-28
第一次爬python首頁的時候,是亂碼的,然後隔天再爬又正常了我也不知道為什麼。。。然後模擬登錄的時候爬回來也是亂碼。。TAT。。。還有如果沒有fiddle如何查看發出的quest到底要包含哪些信息???求教!!!!
亂碼成這個樣子:
第一種方法,解壓伺服器發回來的壓縮數據~
第二種方法,去掉request header中的『Accept-Encoding』頭去掉~
兩種方法選一個就好~
究其原因,簡單來講就是,Server在與Browser通信的過程中,會按照Browser支持的壓縮格式壓縮後再回復,所以你在header中加入了「Accept-Encoding」其實就是告訴Server:「嘿,我支持Gzip/../..,你壓縮一下再給我吧~~~」然後Server就壓縮了~~~自然你收到的數據就是壓縮後的,你不解壓就去讀當然就成亂碼了。第一種解決辦法就是解壓Server給你的壓縮數據,第二種就是告訴伺服器我不會解壓,你別壓縮~~~
如上~~~看python培訓黃哥的三篇文章
python開發爬蟲漢字編碼不再是問題:
將python2中漢字會出現亂碼的事一次性說清楚
article/python_bianma.md at master · pythonpeixun/article · GitHub
python爬蟲訪問多個網站、中文編碼的處理。
python爬蟲訪問多個網站、中文編碼的處理。
python3訪問sina首頁中文的處理
python3訪問sina首頁中文的處理
Accept-Encoding: gzip, deflate, br
把br去掉!
gzip壓縮的吧。。。。。。用gz庫解壓一下。
推薦閱讀:
※在計算機中為何不直接使用UTF8編碼進行存儲,而要使用Unicode再轉換成UTF8?
※Unicode 是不是只有兩個位元組,為什麼能表示超過 65536 個字元?
※為什麼編碼(GBK、Big-5 等)問題這種歷史遺留始終得不到解決?
※如何用 Potplayer 消除 .srt 文件的中文字幕亂碼?
※如何評價 iOS 8.3 中各種膚色的 Emoji 表情?
TAG:Python | Unicode統一碼 | 爬蟲計算機網路 |