【发布时间】:2011-06-14 22:02:00
【问题描述】:
给定一个 facebook url,例如 http://facebook.com/cnn,有没有什么方法可以获取该页面的 ID 而不是抓取它?
【问题讨论】:
标签: facebook
给定一个 facebook url,例如 http://facebook.com/cnn,有没有什么方法可以获取该页面的 ID 而不是抓取它?
【问题讨论】:
标签: facebook
最好(并且合法)使用图形 API 来执行此操作。只需向https://graph.facebook.com/cnn 执行 API 请求并从响应中获取 id。
这是cnn的回复:
{
"id": "5550296508",
"name": "CNN",
"picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/hs178.ash2/41813_5550296508_728_s.jpg",
"link": "http://www.facebook.com/cnn",
"category": "Company",
"website": "www.cnn.com\nwww.ireport.com\n",
"username": "cnn",
"company_overview": "TRIVIA FROM THE CNN TOUR...",
"products": "CNN US...",
"likes": 1689936
}
【讨论】:
Unsupported get request,则页面为may be restricted。
Facebook 自己的 Graph API 支持它。来自documentation:
“ids”查询参数也接受 URL。这对 在 Open Graph 中查找 URL 的 ID。例如: https://graph.facebook.com/?ids=http://www.imdb.com/title/tt0117500/
【讨论】:
截至今天(2015 年 7 月 28 日),仍然存在一种获取页面(或用户)ID 的简单方法。
浏览到 Facebook 页面(或用户)网址。语法是 https://www.facebook.com/[username 或 pagename]
右键查看源码,然后搜索字符串"pageID":,如果是page。搜索字符串旁边的数字 id 将是 id。 如果是用户,请搜索 "uid":。
【讨论】:
今天一直在使用它。所以,对于那些想知道它是如何工作的人来说。使用这个:
https://graph.facebook.com/<the_fb-address>?access_token=$accessToken
请记住:这仅适用于页面。不是用户页面/朋友的时间线等。 在您阅读他们的个人资料之前,他们必须先批准您的 Facebook 应用。
【讨论】:
GET /v2.8/https%3A%2F%2Fwww.facebook.com%2Fcnn%2Fposts%2F10155873400471509(使用访问令牌...使用 Graph API 资源管理器)我只取回了一个“网站”对象,并没有关于官方公共页面上的公共帖子。