84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
打印出返回的用户信息的json值,如果是中文会出现乱码,比如省份,得到的值为u'province': u'\xe6\xb5\x99\xe6\xb1\x9f', 不知道哪里出错了。 另外,如果对返回的json值作解码,居然会出现40029错误。
闭关修行中......
没有错啊,题主你试试print '\xe6\xb5\x99\xe6\xb1\x9f',这不就是打印出来是“浙江”么。
首先,python2的print有bug,就是虽然x = {‘province': '浙江'},但是print x还是会显示{'province': '\xe6\xb5\x99\xe6\xb1\x9f'}。 这个问题到Python3里已经解决了。
但是仔细观察一下这不是你的case。你的问题是以utf8编码的字符串被当成unicode编码的字符串放进unicode对象里去了。
这个时候只要(假设你的json反序列化之后的对象存在x里)
python>>> print x[u'province'].encode('raw_unicode_encoding') '浙江'
python
>>> print x[u'province'].encode('raw_unicode_encoding') '浙江'
Voilà!
应该是没有设置编码格式的问题,在获取用户信息的时候设置编码为UTF-8,另外获取用户信息接口https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN中的参数lang=zh_CN要带上。 至于40029错误,可能是授权获取到的code已经过期,code只能使用一次,5分钟未被使用自动过期。
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
lang=zh_CN
@lohocla4dam 的答案给我帮助很多,只是我需要做些补充,因为他的答案是针对python2的,我这里的python3的
根据 https://docs.python.org/3/library/codecs...,encoding换成raw_unicode_escape,即
>>> print(x['province'].encode('raw_unicode_escape')
没有错啊,题主你试试print '\xe6\xb5\x99\xe6\xb1\x9f',这不就是打印出来是“浙江”么。
首先,python2的print有bug,就是虽然x = {‘province': '浙江'},但是print x还是会显示{'province': '\xe6\xb5\x99\xe6\xb1\x9f'}。
这个问题到Python3里已经解决了。
但是仔细观察一下这不是你的case。你的问题是以utf8编码的字符串被当成unicode编码的字符串放进unicode对象里去了。
这个时候只要(假设你的json反序列化之后的对象存在x里)
Voilà!
应该是没有设置编码格式的问题,在获取用户信息的时候设置编码为UTF-8,另外获取用户信息接口
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
中的参数lang=zh_CN
要带上。至于40029错误,可能是授权获取到的code已经过期,code只能使用一次,5分钟未被使用自动过期。
@lohocla4dam 的答案给我帮助很多,只是我需要做些补充,因为他的答案是针对python2的,我这里的python3的
根据 https://docs.python.org/3/library/codecs...,encoding换成raw_unicode_escape,即