scrapy采集—爬取中文亂碼,gb2312轉為utf-8


有段時間沒怎么使用scrapy了,最近采集一個網頁,發現網頁編碼是gb2312,

一開始就取搜索了下,發現各種操作都有,有在settings中設置  

# FEED_EXPORT_ENCODING = 'utf-8'
FEED_EXPORT_ENCODING = 'GB2312'

有在spider中設置response.body的encoding的,而我用的是response.xpath,到這里發現問題也還是不能夠解決,

最后發現 在Download MinddleWares中有個process_response方法,在下載器中間件中將返回的請求數據修改編碼即可完成

response = HtmlResponse(url=response.url, body=response.body, encoding='utf-8')  
return response

 


免責聲明!

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



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