Python 2.7 requests库发送POST请求,请求体是JSON格式,JSON字符串中包含中文,可以如此处理:
- Python 2.7 默认的源码文件编码是 ASCIl,如果你想在源代码中使用非 ASCII 字符(比如中文),你需要在文件开头声明文件的编码。你可以在文件的第一行或第二行添加以下行:
# coding: utf-8
或者文章来源:https://uudwc.com/A/AA6ww
# -*- coding: utf-8 -*-
注意:中文字符串前不要加u,如u’测试’,字符串前加u代表使用unicode编码该字符串(utf8编码汉字占3个字节。在UTF-8编码中,一个中文等于三个字节,一个中文标点占三个字节;而在Unicode编码中,一个中文(含繁体)等于两个字节。)文章来源地址https://uudwc.com/A/AA6ww
- 如果JSON字符串中的汉字是从文件中读取,该文件需要编码为utf-8格式;
- headers声明charset=utf-8:
url = "http://xxxxxxxxxxx"
headers = {"Content-Type": "application/json;charset=utf-8"}
data = json.dumps(params, ensure_ascii=False)
response = requests.post(url, data, headers)