我希望能够运行一个脚本,该脚本在运行后自动删除我的Facebook帖子/活动。
我已经编写了脚本,以便目前可以对用户个人资料中显示的所有帖子进行整理,但是我不确定现在如何自动删除帖子,因为这将是脚本的最后一步。
import requests
import pprint
import sys
# See http://www.unixtimestamp.com/ to generate Unix timestamps online
payload = {
'until': 1566691200, # Unix timestamps
'since': 1072915200, # Unix timestamps
'limit': 1000, # number of posts
'access_token': '', # your access token
}
#Variables
id = 'id'
name = 'name'
base_api = 'https://graph.facebook.com'
posts_endpoint = base_api + '/me/posts/'
posts_response = requests.get(posts_endpoint, params=payload)
if posts_response.status_code != requests.codes.ok:
print('Error: ' + posts_response.json()['error']['message'])
sys.exit(0)
posts_dict = posts_response.json()['data']
pprint.pprint(posts_dict)
print("Total posts to delete: %d" % len(posts_dict))
for post in posts_dict:
#print("Deleting [%s] %s" % (post['id'], post['name']))
requests.delete(base_api + '/' + post['id'], params=payload)
#print("Deleted [%s] %s\n" % (post['id'], post['name']))
如预期的那样,它将在%user页面上打印当前帖子列表。
答案 0 :(得分:0)
我认为,您的request.delete方法是正确的,但是
您可以查看文档https://developers.facebook.com/docs/graph-api/using-graph-api#deleting
也就是说,它只需要访问令牌作为删除请求中的参数。
curl -i -X DELETE \
"https://graph.facebook.com/{your-page-post-id}?access_token={your-page-access-token}"
或者您可以使用POST方法
curl -i -X POST \
"https://graph.facebook.com/{comment-id}?method=delete&access_token={access-token}"
并保持您的访问令牌为私密