我试图用Facebook SDK for Python编写一个python脚本来下载我自己的照片。
my_token = 'user_access_token'
import facebook
graph = facebook.GraphAPI(access_token=my_token, version='2.7')
photos = graph.get_connections(id='me', connection_name='photos')
photos
但照片是一个空洞的词典。
{'data': []}
我意识到我的每个用户访问令牌只有user_friends,public_profile权限,这是使用我自己的fb帐户生成的,如果我需要更多权限,我需要申请进行应用审核"Apps that ask for more than public_profile, email and user_friends must be reviewed by Facebook before they can be made available to the general public."
我是否真的需要为我所谓的应用程序申请审核,这只是一个python脚本,以便下载我自己的照片或我在这里遗漏了一些东西
答案 0 :(得分:0)
我使用自己的Facebook帐户创建了一个开发者帐户。我创建了一个测试应用程序,我是该应用程序的管理员。我正在使用我认为是管理员的user_token,我可以访问各种权限,但它没有photo_permission,只有public_profile和user_friends。
permission = graph.get_permissions(user_id = user_id)
permission
{'public_profile', 'user_friends'}
我花了一些时间来弄清楚如何在没有应用评论的情况下获得user_photo的许可,正如有人之前建议它可能涉及以我自己的身份登录,并没有带我到任何地方。然后我偶然发现Graph API explorer,它让我生成一个具有您需要的任何权限的访问令牌。你只需要勾选方框!
现在,当我使用这个新令牌获取照片权限时
permission = graph.get_permissions(user_id = user_id)
permission
{'public_profile', 'user_friends', 'user_photos'}
照片不再是一个空洞的词典
len(photos['data'])
25