【问题标题】:Retrieving Facebook Page Statuses with PHP使用 PHP 检索 Facebook 页面状态
【发布时间】:2016-04-07 10:45:07
【问题描述】:

在网上搜索了好几天,我找不到最新的工作方法来检索 Facebook 页面上的最新状态列表。

  • 在 Graph API 的状态部分,我看到“此文档指的是在 Graph API v2.3 之后删除的功能”
  • 我无法让 file_get_contents 在 Facebook 页面上工作,因为我收到了验证码

这是为了竞争对手的研究,我只是想要:

  • 发布日期
  • 点赞/分享/回复的数量

我不在乎状态内容本身,只关心它周围的指标。

JSON 对象会很棒,但我会在这个阶段采取任何措施。

还有其他人设法获得此类数据或知道在 Facebook 页面上使用 file_get_contents 的方法吗?

谢谢。

【问题讨论】:

  • “Graph API 在 v2.4 之后停止使用”——废话,当然不是。 / 使用 file_get_contents 直接请求 Facebook 页面的 HTML 代码会被抓取——这是 Facebook 的 ToS 所禁止的,所以不要这样做。如果您需要任何信息,请使用 API。
  • @CBroe 多么讨厌和无益的回复。我的意思是,Graph API 上的状态功能说:“本文档指的是在 Graph API v2.3 之后删除的功能”
  • 没有人能猜到你可能想说什么。 // 状态只是某种类型的帖子——所以你需要做的就是请求页面的提要(相应的帖子),然后检查它们的类型是否是状态。
  • @CBroe Perfect,这就是我所需要的。如果您愿意,可以将其作为答案。我刚刚尝试访问 post 对象以获取喜欢/最喜欢的计数 .etc 并获取“[message] => (#12) 不推荐使用 v2.4 及更高版本的单数状态 API”。您还知道获取这些数据的方法吗?谢谢你的帮助。
  • 做到了。添加了更多解释,以及如何处理您提到的错误。

标签: php facebook facebook-graph-api


【解决方案1】:

状态只是某种类型的帖子 - 所以您需要做的就是请求页面的提要(相应的帖子),然后检查它们的类型是否为状态。

我刚刚尝试访问 post 对象以获取喜欢/最喜欢的计数 .etc 并获取“[message] => (#12) 不推荐使用 v2.4 及更高版本的单数状态 API”

您需要使用从 /feed 或 /posts 端点获取的“完整”帖子 ID——页面 ID、下划线、帖子 ID 的组合。 (至少这是当前的格式,但 Facebook 的某个人告诉我我们不应该依赖它,它可能会在某个时候改变。最好你真的只使用完整的 id,因为端点会返回它。)

由于您只对喜欢的总数感兴趣,而不是个人喜欢,您可以提出这样的请求,

{full_post_id}?fields=likes.summary(1).limit(0)

请求摘要(包含总计数),并将返回的个人喜欢的数量限制为零(以免请求任何不必要的数据。)它对 cme​​ts 的工作方式相同。但我认为对于共享帖子没有这样的计数,你只会得到一个帖子列表(可能不是全部,但只有那些你被允许看到的。)

【讨论】:

    猜你喜欢
    • 2015-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多