python寫爬蟲時的編碼問題解決方案
阿新 • • 發佈:2018-02-21
簡單的 set 方式 右擊 html str url -s input
在使用Python寫爬蟲的時候,常常會遇到各種令人抓狂的編碼錯誤問題。下面給出一些簡單的解決編碼錯誤問題的思路,希望對大家有所幫助。
首先,打開你要爬取的網站,右擊查看源碼,查看它指定的編碼是什麽,如:
<META http-equiv=Content-Type content="text/html; charset=gb2312">
我這裏指定的charset為gb2312,下面我都會用gb2312作為例子進行編碼解碼
提交輸入
我們常常要獲取輸入,通過參數的形式提交請求。如果直接 request.get(url+input) 的話,很容易出現編碼錯誤。這時候,不妨嘗試一下下面的方法:
1 data = { 2 "key":input.encode(‘gb2312‘,‘ignore‘) 3 } 4 request.post(url,data=data)
獲取輸出
當獲取輸出的時候,推薦使用如下獲取方式:
1 res = request.get(xxx) 2 html = res.content.decode(‘gb2312‘,‘ignore‘)
寫入到文件
把獲取到的數據保存到文件中時
1 f = open(path,‘w+‘,encoding=‘gb2312‘) 2 f.write(xxx)
python寫爬蟲時的編碼問題解決方案