问题遇到的现象和发生背景
我在进行这一步的时候,发现他自动将data_2里的中文转成unicode了怎么办。如何防止他转成unicode?
问题相关代码
这是我在该网站写的
这个是我pycharm用接口写的
可以看到两个name值是有不同的,怎么解决?谢谢!
我在进行这一步的时候,发现他自动将data_2里的中文转成unicode了怎么办。如何防止他转成unicode?
这是我在该网站写的
这个是我pycharm用接口写的
可以看到两个name值是有不同的,怎么解决?谢谢!
url_params={
"access_token":token
}
tag_info={"tag":{"name":"定时"}}
tag_str=json.dumps(tag_info,ensure_ascii=False)
#将json格式转换为字符串格式
response=self.session.post(url='https://api.weixin.qq.com/cgi-bin/tags/create',
params=url_params,
data=tag_str.encode('utf-8'))
actual_result=jsonpath.jsonpath(response.json(),'$.tag.name')[0]
#因为jsonpath返回的数据格式为列表,要取出数字需要在后面加上[0]
self.assertEqual(actual_result,'定时')
解决编码格式:
1、将json格式的内容使用json.dumps()转换为字符串格式,并设置参数ensure_ascii=False
(因为json.dumps()会自动将中文转为Unicode编码,所以将ensure_ascii设置为False)
2、在请求中设置编码格式为utf-8(data=字符串格式数据.encode('utf-8'))