我想从网页上读取非ASCII JSON数据,在我的例子中是Perrsian.这是我在python-2.7中的代码:
jsonObject = json.loads(urllib2.urlopen("https://api.instagram.com/v1/users/"+userId+"/?access_token="+accessToken).read().decode('utf-8').encode('utf-8')); print jsonObject;
不幸的是,即使在decoding
和encoding
我得到了这样的结果:
{u'meta': {u'code': 200}, u'data': {u'username': u'*******', u'bio': u'\u0639\u06a9\u0633 \u062f\u0648 \u0646\u0641\u0631\u062a\u0648\u0646 \u0631\u0648 \u0627\u0631\u0633\u0627\u0644 \u06a9\u0646\u06cc\u062f\U0001f48f\U0001f491', u'website': u'', u'profile_picture': u'*****', u'full_name': u'\U0001f451\u0639\u0634\u0642 \u0647\u0627\u06cc \u0627\u06cc\u0631\u0627\u0646\u06cc\U0001f451', u'counts': {u'media': 31, u'followed_by': 12449, u'follows': 0}, u'id': u'*******'}}
我需要做什么才能正确获取角色?
这很正常.容器内容使用ASCII友好的Python语法表示.
打印单个字符串值,您将看到实际值仍然存在:
>>> print jsonObject['data']['bio'] ??? ?? ?????? ?? ????? ????