我无权使用Facebook SDK删除对象

时间:2019-05-12 11:01:09

标签: python facebook permissions sdk http-delete

我正在尝试实现Python脚本来检索我的帖子,并且能够删除其中的一些帖子。检索所有内容似乎都很好,但是当我调用delete_object方法时,它说我没有权限。

我有我的用户访问令牌,并从仪表板中授予了所有权限。然后,从我的Facebook个人资料中,我同意我的应用执行所有操作。

这是一个简单的函数,用于接收帖子ID列表作为输入:

fb = facebook.GraphAPI(token, version="3.1")
my_profile = fb.get_object('me')
my_id = my_profile["id"]

def delete_posts(posts):
    for i in range(len(posts)):
        fb.delete_object(posts[i])

这是错误:

Traceback (most recent call last):
  File "D:/Download/FBHandler/main.py", line 159, in <module>
    fb.delete_object(id)
  File "D:\Download\FBHandler\venv\lib\site-packages\facebook\__init__.py", line 197, in delete_object
    return self.request("{0}/{1}".format(self.version, id), method="DELETE")
  File "D:\Download\FBHandler\venv\lib\site-packages\facebook\__init__.py", line 299, in request
    raise GraphAPIError(result)
facebook.GraphAPIError: (#200) The user hasn't authorized the application to perform this action

1 个答案:

答案 0 :(得分:0)

https://developers.facebook.com/docs/graph-api/reference/v3.3/post#deleting

  

应用可以删除它发布的任何帖子,或者页面管理应用可以删除发布到该应用管理的页面上的帖子。

如果帖子不是由该应用创建的,则无法将其删除。