facebook - 使用 Facebook API 获取页面的所有照片

标签 facebook api photo facebook-page

我是 Facebook API 的新手,但我必须从 Facebook 页面获取所有照片。我设法获得了一个图形 API 查询,该查询返回个人资料相册页面上仅第一个创建的相册 的所有图片。例如:

https://graph.facebook.com/227843870675663/photos

但我需要对页面中所有其他现有相册执行相同的操作。非常感谢任何指点。

最佳答案

试试这个,让我知道你的效果如何。我已成功从 Facebook 页面中提取所有照片。

  1. 确保您是 Facebook 主页的管理员

  2. 转到: http://developers.facebook.com/tools/explorer

  3. 在API Navigator中,您可以访问/me来调出您自己的基本信息。

  4. 尝试输入 /me/accounts 看看你是否能看到任何东西。它应该给你一个错误。

  5. 您需要启用某些权限才能进行此图形查询。在右侧边栏中选择相关权限。根据此文档,您需要此查询的 pages_show_listpages_read_engagement 权限。

  6. 点击“获取访问 token ”,这将为您提供一个具有更新权限的新 token 。您可能会看到一个弹出窗口,您必须在其中确认您希望此访问 token 能够看到哪些页面。

  7. 现在再次尝试 /me/accounts。您应该会在查看窗口中看到您启用访问权限的页面列表。

  8. 找到您要查询的 Facebook 页面,然后点击 “id” 字段。进行与此页面相关的任何查询都需要此 ID。

  9. 接下来,在左侧窗口中,您可以看到“节点:” 和一个+ 符号。单击 + 符号查看您有哪些选项。

  10. 点击 + 符号并向下滚动到“连接”并选择“相册”

  11. 子级,选择“照片”

  12. “照片”子级,选择“来源”

  13. 现在点击右侧的“提交”

    如果上述方法不起作用,您可以尝试将以下 URL 复制到 API 资源管理器中:

    YOUR_PAGE_ID/?fields=albums.fields(photos.fields(source))
    

    您将看到返回的 JSON,其中包含所选 Facebook 页面中部分/所有照片的 URL。

  14. 点击“获取代码”,它将向您显示用于访问此信息的 Javascript 或原始 URL。

    “cURL”选项卡将显示如下所示的 URL:

    https://graph.facebook.com/v15.0/YOUR_PAGE_ID?fields=albums.fields(photos.fields(source))&access_token=YOUR_ACCESS_TOKEN_HERE
    

    您可以复制该 URL 并将其插入浏览器。您应该会看到所有照片的 JSON,以及每张照片在 Facebook 的 CDN 上的对应 URL。

获取发布到 feed 的照片,而不仅仅是相册

为此,您需要运行一个稍微不同的查询:

https://graph.facebook.com/v15.0/YOUR_PAGE_ID/feed?fields=attachments

获取高分辨率图像

上述查询提供的许多图片网址最多只能提供 720 像素的分辨率。如果您想要更高分辨率的图像,则需要为每个子附件找到 target.id,并对每个图像执行单独的图形查询以获得其他分辨率。它看起来像这样:

https://graph.facebook.com/v15.0/YOUR_IMAGE_ID?fields=images

注意过期 token

上面生成的 token 只能工作大约 1-2 小时。如果您想要更持久的 token ,请按照 this post here 中的步骤操作.

关于facebook - 使用 Facebook API 获取页面的所有照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18037926/

相关文章:

python - 如何使该页面在登录/注销时重新加载?

javascript - 使用 Javascript 登录 Facebook 并记录新的 Parse Session

ruby-on-rails - rails : Cookie overflow with omniauth twitter sign up

c++ - WIN API C++ 写入文件的本地位图资源不可查看

php - 异常 : error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure NULL

Android ContactsContract.Contacts.openContactPhotoInputStream 总是返回 null

javascript - 在 iFrame 中使用 "window"和 "document"

ios - Google Maps API - 自定义标记

ios - 将图像或视频添加到 iPhone 模拟器

iphone - 如何将自己的图像添加到 PhotoScroller 示例中?