Facebook API:获得页面/群组帖子的喜欢,分享,评论计数的最佳方式?

获得帖子的喜欢,分享,评论计数的最佳方法是什么?

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

从link_stat中选择like_count,comment_count share_count,其中url=“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/likes?summary=true获得喜欢的计数

最大的问题是缺少的份额计数。

所以总结,

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


答案 1
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
    }
  }
}

答案 2

你可以像这样使用Facebook graph api,它会返回一个json代码,比如https://graph.facebook.com/?ids=http://mycodingtricks.com

{  
    "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/


推荐