python3 requests的post请求参数包含中文报错

Python013

python3 requests的post请求参数包含中文报错,第1张

问题指明:post请求中文,无法进行编码,需要对参数进行“utf-8”的编码

尝试:按报错进行解决:

出现问题: 返回的response的中文数据为乱码

相当乱码的话,应该是编码不匹配的问题,尝试解决:

结果这乱码更加摸不着头脑了:

这个问题,一直弄了我一个晚上,太困睡觉,起床后,直到这篇解决我的问题: python 设置requests 编码,完美解决中文乱码问题 :

这个请求头直接印象下面乱码:

解决分析参考: 从python爬虫引发出的gzip,deflate,sdch,br压缩算法分析

就因为这个,让我弄了一晚,得到的经验是: 在测试bug的时候,尽量减少变量,能不要的,就不要

这个报错是因为你程序中有中文的时候,中文编码并没有指定的情况

一般这种情况只要在程序头输入: # -*- coding: UTF-8 -*-

这样就OK啦!!

当然!!

如果你是用 PyCharm 的话,就设置一下就可以了:

一、点击 File 然后选择 Settings...

二、打开后找到 Editor ,然后在点击 File Encodings ,一看原来是 3 这个地方出问题了,这个编码是GBK;

三、现在我们就要修改一下,要把两个都换成 UTF-8 ,点击 Apply ,然后点击 OK 就完成啦!!

python程序,报错NameError: name XX is not defined 是没有声明造成的,需要在文件的前两行进行声明编码,声明方法为:

1、写一个python文件,文件中有中文字符,且未声明编码。

2、当程序文件中,存在中文字符时候,文件未声明编码格式就会出现报错信息:  File "encode.py", line 1SyntaxError:

Non-ASCII character '\xe7' in file encode.py on line 1, but no encoding

declaredsee //..python.../dev/peps/pep-0263/ for details for details。

3、根据错误提示,在python官网得到如下帮助信息。

4、所以,按照帮助文档的提示以及例子,在Python文件中加入一个编码声明。

5、保存之后,再次运行,运行成功。