获取Facebook用户的公共电子邮件地址

时间:2016-03-07 11:04:07

标签: python facebook-graph-api

我正在尝试获得email address Facebook用户,但我无法,但他们的电子邮件地址隐私设置为公开。

这是我的代码:

graph = facebook.GraphAPI(access_token)
data = graph.request('/search?q=' +user+'&type=user')
id =  data.items()[1][1][0]["id"]
args = {'fields' : 'id,name,email' }
profile = graph.get_object(id, **args)
print profile

我没有收到任何错误,我收到了ID和姓名,但没有收到电子邮件地址。

1 个答案:

答案 0 :(得分:3)

该用户必须向您的应用授予permission,才能阅读他们的email address,即使他们的email address隐私设置为public

您应该使用Facebook Graph API Explorer查看是否能够使用您的应用token获取该人的电子邮件地址。

至于python代码,我认为你做得对:

import facebook
graph = facebook.GraphAPI(access_token)
fields = {'fields' : 'id,name,email'}
profile = graph.get_object(facebook_user_id, **fields)