python 打印出来是乱码

图片描述
图片描述

coding:utf-8 我在开头有 #coding:utf-8 为啥打印出来是乱码?

阅读 2.8k
2 个回答

爬虫下来是有编码格式的
比如你爬下来的是text
print text # 是乱码, 假如type(text) 是str
print text.decode('gbk') # gbk可以换成latin1,utf-8,utf-16,gb2312等编码,最好是能获取网页的编码,requests库支持爬虫后获取网页编码requests.get(url).encoding

requests源码里面提到,响应头content-type里面如果有text的话,返回类型是ISO-8859-1,所以你可以这样试试(亲测好用)。

response = requests.request('GET', url)  
response.encoding=None
response.text

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题