python response 中文乱码问题

Python021

python response 中文乱码问题,第1张

获得response.text有如下类似的乱码: 解决方法有两种: 第一种: apparent_encoding方法是requests库利用chardet对字节流编码进行了猜测。一般来说使用这种方法,大部分网页的中文乱码都会恢复。如果还是不行,那就试试第二种方法。 第二种: 从网页格式中获得网页内容的编码方式(一般content-type字段会出现在HTML的header的头几行)。 如果直接拿来用,会报错 所以需要给decode加上第二个参数,decode([encoding], [errors='strict']), 第二个参数设置为ignore,则会忽略非法字符。 这样就能获得正确的中文内容了。 练习网址 https://news.mydrivers.com/1/628/628585.htm

windows下的文件路径,cmd窗口等默认编码都是gbk

但在windows下编写python程序的时候,我们一般采用的编码是utf-8

二者不一致是导致乱码的根本原因!

在pycharm下,为了中文不乱码,那么需要注意一下几个方面:

一、每一个源程序文件头部,需要加上

#-*-coding:utf-8-*-

这样就没有乱码了