2016-08-18 166 views
4

的/评论数之前到今天,我用下面的URL来获取Facebook分享/像一个URL的/评论数:获取Facebook分享/像URL

https://api.facebook.com/method/links.getStats?format=json&urls=http://stackoverflow.com/ 

今天,Facebook的取消了这一功能。所以,现在我使用这个:

https://graph.facebook.com/v2.7?emc=rss&fields=og_object{engagement},share&access_token=<ACCESS_TOKEN_GOES_HERE>&id=http://stackoverflow.com/ 

,输出:

{ 
    "og_object": { 
     "engagement": { 
      "count": 45267, 
      "social_sentence": "45K people like this." 
     }, 
     "id": "10150180465825637" 
    }, 
    "share": { 
     "comment_count": 12, 
     "share_count": 45267 
    }, 
    "id": "http://stackoverflow.com/" 
} 

的问题是,share_count是总喜欢评论+ +股份(据我所知)。

有没有办法让喜欢,评论和分享个别

回答

10

看起来像一个错误在fb-api中。

我的解决办法:

  1. 收到的股/评论的数量,你在你的问题描述与

    graph.facebook.com/?fields=og_object{id},share & ID = https://stackoverflow.com/

  2. 节省股/评论数

  3. 存储URL的FB对象ID

    og_object-> ID

  4. 得到喜欢用数(最大限制是1000,那么你可以使用分页):

    graph.facebook.com/OBJECT_ID/likes?access_token=ACCESS_TOKEN & pretty = 1 & limit = 1000

UPD 2016年8月22日

我发现了一个解决方案,让您得到一步到位的喜欢/转播/评论数:

https://graph.facebook.com/?fields=og_object {likes.limit (0)。总结(真)},分享& IDS = http://google.com,http://twitter.com

+0

伟大和简单的解决方案与UPD 2016-08-22!虽然我期望成为“喜欢”的数字在喜欢的对象中显示为0,并在“共享”对象中显示了预期的数字。所以这个份额似乎是一个组合或喜欢和分享(或者甚至只是喜欢)。 – cpres

1

它目前不可能。 Facebook正在为URL添加likes/shares/comments并将其作为shared_count返回。 不可能返回正确数量的个人喜欢/份额/评论,这在Graph API文档中并不清楚。不清楚它是一个错误还是文档错误。

提供此数据的旧Rest API在8月18日关闭。

有来自Facebook的工程师在答复解释这一个bug报告的注释,在回答这个堆栈溢出问题: Getting Facebook Share, Like and Comment Counts for a Given URL with API Graph v2.6

您也可以订阅到Facebook的这个bug报告,但它是一个旧的仍然没有解决方案: https://developers.facebook.com/bugs/748651458568287/