如何从包含所有喜欢和评论的页面中获取所有帖子?
Posted
技术标签:
【中文标题】如何从包含所有喜欢和评论的页面中获取所有帖子?【英文标题】:How to get all post from a page with count ALL likes and comments? 【发布时间】:2013-07-22 03:59:07 【问题描述】:附上一个问题... 我尝试使用所有提要喜欢和评论在一段时间内检索页面。或者..实际上我只需要总体喜欢和 cmets 的总数。
到目前为止...
$user_pages = $facebook-> api ('/ me / accounts');
...
$page_feeds = $facebook-> api ("/". $ page_name ['id']. '/ feed', 'GET', array ('limit' => 10000, 'since' => mktime (0,0, 0, date ("m"), 1, date ("Y"))));
...
foreach ($page_feeds ['data'] as $ page)
$c = $facebook-> api ("/" $ page ['id'] "/ likes", "GET", array ('limit' => 10000)..);
$temp ['likes'] = count ($ c ['data']);
$c = $ facebook-> api ("/" $ page ['id'] "/ comments", "GET", array ('limit' => 10000)..);
$temp ['comments'] = count ($ c ['data']);
.....
所以我得到了我作为管理员的所有页面,然后从本月的第一天开始提供所有页面。这一直持续到答案出现为止。但问题是我最多只能获得最多 25 个最多 25 个喜欢和评论。 (API 文档中描述的“计数”一词,但我在这里遗漏了。
所以现在我必须在循环中调用每个 feed 上的所有喜欢和 cmets,然后获取数字。
这些查询现在需要三分钟......这显然太长了......
这不是很好的方式吗?我已经能够找到任何东西。 我希望我这个查询
$page_feeds = $ facebook-> api ("/". $ page_name ['id']. '/ feed', 'GET', array ('limit' => 10000, 'since' => mktime (0,0, 0, date ("m"), 1, date ("Y"))));
可以调整,然后所有喜欢和cmets(或至少数字)获得
150769909716/feed?fields=likes.limit(10000).fields(id),comments.limit(10000).fields(id)&limit=10000&since=1372608000
不幸的是,最多只给我回了 25 个赞和 cmets。
提莫
#编辑:
https://graph.facebook.com/[pageid]/feed?fields=likes.limit%2810000%29.fields%28id%29,comments.limit%2810000%29.fields%28id%29&locale=de_DE&since=1372608000&limit=10000&access_token=yyyy
给我:
"data": [
"id": "xxx_xxx",
"created_time": "2013-07-23T07:08:25+0000",
"likes":
"data": [
"id": "xxxx"
,
],
"paging":
"cursors":
"after": "xxx",
"before": "xxxx"
,
"next": "xxxx"
,
https://graph.facebook.com/[pageid]/feed?since=1372608000&limit=10000&access_token=yyyy
给我:(是的,我的伯爵在那里……但只有浏览器调用)
"likes":
"data": [
"name": "xxx",
"id": "xxx"
,
],
**"count": 53**
,
每次调用相同的调用给我的结果没有 Count 数据....
【问题讨论】:
【参考方案1】:不幸的是,Facebook 已删除,因为您在查看帖子时看到了喜欢和 cmets 的总数。相反,您需要为每个帖子再次调用以检索总喜欢或 cmets。 他们还将其从 count 重命名为 total_count
例子:
为了喜欢
https://graph.facebook.com/POST_ID/likes/?summary=true
它会返回类似这样的东西
"data": [
"id": "xxxx",
"name": "xxxxx"
,
"id": "xxxx",
"name": "xxxxx"
,
"id": "xxxx",
"name": "xxxxx"
,
"id": "xxxx",
"name": "xxxxx"
],
"paging":
"cursors":
"after": "NTU2MTU3NjU0",
"before": "MTA4OTM4NzgwMA=="
,
"summary":
"total_count": 4
对于 cmets:
https://graph.facebook.com/POST_ID/comments/?summary=true
"data": [
"id": "xxxxx",
"from":
"category": "Media/news/publishing",
"category_list": [
"id": "xxxxxx",
"name": "xxxx"
,
"id": "xxxxxx",
"name": "xxxx"
],
"name": "xxxxx",
"id": "xxxxx"
,
"message": "xxxxxxx",
"can_remove": false,
"created_time": "2013-07-03T20:36:54+0000",
"like_count": 0,
"user_likes": false
],
"paging":
"cursors":
"after": "Mg==",
"before": "Mg=="
,
"summary":
"order": "ranked",
"total_count": 2
【讨论】:
如何找到帖子的 post_id。以上是关于如何从包含所有喜欢和评论的页面中获取所有帖子?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Wordpress 页面/帖子中获取所有标签作为简码列表?
如何使用 mongodb 和 mongoose 从帖子模型中计算整体帖子活动(喜欢、不喜欢、评论)和用户模型中的参考总和