我有一个Facebook页面,我发布照片,它们出现在时间轴上。我看到那里的按钮,靠近'喜欢'和'评论','分享'。我看到这个项目分享了多少次。我怎么能得到这个数据?
我尝试的事情:
img_id_on_facebook = '123'
fb = facebook.GraphAPI(token)
fb.request(path='/123/shares')
这给出了:
{
"error": {
"message": "Unsupported get request.",
"type": "GraphMethodException",
"code": 100
}
}
另一次尝试:
fb.request(path='/123/', args={'fields': 'shares'})
给出同样的错误。
通话:
fb.request(path='/123/')
没有钥匙'分享'。
我也尝试了fql:
fb.fql('SELECT shares_count FROM link_stat WHERE url=https://facebook.com/123')
这给出了:
GraphAPIError: Impersonated access tokens can only be used with the Graph API
我也尝试过:
fb.request(path='/[PAGE_ID]_[PHOTO ID]/')
这会产生错误:没有这样的终点。
任何人都知道如何获得照片的份额?有办法吗?
答案 0 :(得分:1)
您需要使用帖子ID,其格式应为pageid_postedid
。例如,这张照片
https://www.facebook.com/photo.php?fbid=10151690351123254&set=a.100690783253.87226.80329313253&type=1&theater
照片的ID为10151690351123254
页面的ID为80329313253
post_id为80329313253_10151690351363254
那么您可以请求共享为80329313253_10151690351363254?fields=shares
{
"shares": {
"count": 4435
},
"id": "80329313253_10151690351363254",
"created_time": "2013-06-19T18:02:31+0000"
}
或者在Python的情况下,像
fb.request(path='/80329313253_10151690351363254', args={'fields': 'shares'})