如何使用python阅读facebook图形json数据?

时间:2012-11-27 14:29:35

标签: python django facebook json facebook-graph-api

当我在开发环境中打印“user_stream”时,将打印完整的字符串。但是,当我在生产环境中查看控制台中打印的内容时,不打印“user_stream”的全部内容,我相信这会在以后的其他代码中导致错误。

我的问题是:为什么不在生产环境的控制台中打印“user_stream”的所有内容,我该如何解决这个问题?

instance = UserSocialAuth.objects.get(user=request.user, provider='facebook')
token = instance.tokens
user_url = "https://graph.facebook.com/me/friends?access_token=" + token['access_token']

u = urllib.urlopen(user_url);
user_stream = json.loads(u.read())

print user_stream

1 个答案:

答案 0 :(得分:0)

您的user_stream出现错误。弄清楚它是什么的最好方法是打印字符串,或直接打印错误消息。这些命令可以帮助您弄清楚发生了什么。

print u.read()
print user_stream['error']

我强烈怀疑您的访问令牌无论如何都无效。仔细研究一下。您可以从Graph API Explorer看到的一个示例是:

{
  "error": {
    "message": "Malformed access token AAACEdEose0cBAM0CipLFjIDZCysqmGyZCRJ6x4JsdSVkb177lM0UNMWqSYZA9BmBY0h3PbUiIJppQCbDZD",
    "type": "OAuthException",
    "code": 190
  }

仔细阅读那里的信息,看看你是否能弄清楚如何纠正它。另外,请尝试打印完整的URL并在Graph API Explorer中运行它。