16

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

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

选择like_count、comment_count、share_count FROM link_stat WHERE url="https://www.facebook.com/Macklemore/posts/10153256675935268"

当我通过 Graph API Explorer 获取帖子信息时:

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 获取共享计数?

4

3 回答 3

41
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
    }
  }
}
于 2014-01-20T08:41:16.003 回答
5

您可以使用 facebook graph api 之类https://graph.facebook.com/?ids=http://mycodingtricks.com的,它会返回一个 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/

于 2015-04-06T18:28:10.320 回答
3

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
于 2015-03-27T02:34:37.383 回答