有段时间没怎么使用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
标签:body,utf,gb2312,乱码,scrapy,response From: https://www.cnblogs.com/kuba8/p/16921469.html