Facebook API:获取页面/群组帖子的点赞、分享、评论计数的最佳方式


Facebook API: best way to get like, share, comment count for a page/group post?

获得帖子的点赞、分享、评论计数的最佳方式是什么?

我正在尝试通过 FQL 进行,但当 URL 是 FB 帖子 URL 时,它似乎没有提供任何数据:

从link_stat位置中选择like_count、comment_count share_count 网址="https://www.facebook.com/Macklemore/posts/10153256675935268">

当我通过图形 API 资源管理器获取帖子信息时:

386050065267_10153256675935268

它给了我喜欢计数和共享计数,我可以通过386050065267_10153256675935268/comments?summary=true获取评论计数

{
  "id": "386050065267_10153256675935268", 
  "from": {
    "category": "Musician/band", 
    "name": "Macklemore", 
    "id": "386050065267"
  }, 
  "message": "We’re playing a FREE show in November to celebrate the new Microsoft Store opening in Jacksonville, Florida. Come see us! Info here: http://msft.it/STJevent'n'nThursday, November 21, 2013'n10:00 p.m.'nStart lining up for your chance to attend the show on Saturday.'nLocation: Outdoors behind Oakley, near Dick’s Sporting Goods.", 
  "actions": [
    {
      "name": "Comment", 
      "link": "https://www.facebook.com/386050065267/posts/10153256675935268"
    }, 
    {
      "name": "Like", 
      "link": "https://www.facebook.com/386050065267/posts/10153256675935268"
    }
  ], 
  "privacy": {
    "value": ""
  }, 
  "type": "status", 
  "status_type": "mobile_status_update", 
  "created_time": "2013-09-26T16:30:23+0000", 
  "updated_time": "2013-09-27T20:39:45+0000", 
  **"shares": {
    "count": 274
  },** 
  "likes": {
    "data": [
      {
        "name": "Jabson Ramos", 
        "id": "100005418486411"
      }, 
      {
        "name": "Sophia Belen Parada Andrades", 
        "id": "100002552653152"
      }, 
      {
        "name": "Oli Barrera", 
        "id": "100001718791443"
      }, 
      {
        "name": "Viktoria Martinez", 
        "id": "1697663024"
      }
    ], 
    **"count": 3345**
  }, 
  "comments": {
    "data": [
      {
        "id": "10153256675935268_43537841", 
        "from": {
          "name": "Vu Thai", 
          "id": "1338690172"
        }, 
        "message": "Sean Viray Matt Win Soo... about my birthday weekend...", 
        "message_tags": [
          {
            "id": "75311036", 
            "name": "Sean Viray", 
            "type": "user", 
            "offset": 0, 
            "length": 10
          }, 
          {
            "id": "25113189", 
            "name": "Matt Win", 
            "type": "user", 
            "offset": 11, 
            "length": 8
          }
        ], 
        "can_remove": false, 
        "created_time": "2013-09-26T16:31:03+0000", 
        "like_count": 4, 
        "user_likes": false
      }, 
      .....
    ], 
    "paging": {
      "cursors": {
        "after": "MjY=", 
        "before": "MQ=="
      }, 
      "next": "https://graph.facebook.com/386050065267_10153256675935268/comments?limit=25&after=MjY="
    }
  }
}

奇怪的是,当我在我的应用程序中运行该查询时,我没有得到共享计数或喜欢计数。我做错了什么吗?资源管理器中的数据是否与应用有权访问的数据不同?

我知道我可以通过386050065267_10153256675935268/喜欢?summary=true

最大的事情是缺少的份额计数。

所以总结一下,

您可以通过 FQL 获得这些统计数据吗?如果没有,如何通过图形 API 获取份额计数?

POST_ID?fields=likes.summary(true),comments.summary(true),shares

结果:

{
  "shares": {
    "count": 272            //share count
  }, 
  "likes": {
    "data": [
    ], 
    "paging": {
    }, 
    "summary": {
      "total_count": 3453   //like count
    }
  }, 
  "comments": {
    "data": [
    ], 
    "paging": {
    }, 
    "summary": {
      "total_count": 255    //comment count
    }
  }
}
你可以

https://graph.facebook.com/?ids=http://mycodingtricks.com一样使用facebook图形api,它会返回一个json代码,如

{  
    "http://mycodingtricks.com":{  
        "id":"http://mycodingtricks.com",
        "shares":1
    }
}

我已经开发了自己的php脚本,您可以使用该API进行社交计数。 http://mycodingtricks.com/share/social.php?url=YOUR-URL-HERE,它将返回如下数据:

{  
    "facebook":[  
        {  
            "share_count":1,
            "like_count":0,
            "comment_count":0,
            "total_count":1,
            "click_count":0,
            "comments_fbid":567687199998199,
            "commentsbox_count":0
        }
    ],
    "googleplus":10,
    "twitter":3,
    "buffer":0,
    "pinterest":0,
    "stumblupon":1,
    "reddit":"<html><body><h1>403 Forbidden<'/h1>'nRequest forbidden by administrative rules.'n<'/body><'/html>'n",
    "linkedin":0
}

但是如果你想自己使用 这是一篇关于如何计算Facebook分享的完整文章,喜欢和所有。 http://mycodingtricks.com/php/2-ways-to-count-facebook-likes-shares-and-comments-using-php/

FQL 现已贬值。 以下是使用 2.x API 执行此操作的方法:

get /1000076132681/posts?limit=3&fields=object_id,likes.summary(true),comments.summary(true)

这将生成 xml,例如:

"summary": {
   "total_count": 80
 }

如果您还需要更大尺寸的图片网址,请查看

?fields=full_picture,attachments