Instagram,如何通过标签获取所有照片?

Instagram, How to get All photos by Tag?

所以我可以得到有多少帖子 "SOMETAG":

https://api.instagram.com/v1/tags/SOMETAG

我可以通过标签获取图片:

https://api.instagram.com/v1/tags/SOMETAG/media/recent

但它 returns 只有我的用户照片。

如何从所有带有某个标签(不是一个请求)的用户那里获取所有照片?

我认为您处于沙盒模式,因此它将 return 仅来自您的沙盒授权用户的媒体,以下是相关信息:

As another example, let's consider an endpoint that returns a list of media: /tags/{tag-name}/media/recent. The response returned by this endpoint will contain only media with the given tag, as expected. But instead of returning media from any public Instagram user, it will return only media that belongs to your sandbox users, restricted to the last 20 for each user.

这里是link关于沙盒模式的更多细节:https://www.instagram.com/developer/sandbox/

沙盒模式会影响拉取次数requests/hour,但应该不会导致无法从标签集中拉取数据。

在我的 Instagram 标签 App - (非沙盒) 我能够通过使用您在问题中提到的最近标签 GET 请求来实现这一点。关键是 returned 'responseDict' 中的 pagination

当您的请求 return 带有您第一次拉取的结果时,它将包括密钥和另一个包含下一个 URL (您想要这个)的字典以继续拉取数据正确 time/tagID.

这应该可以解决问题:

~

NSString *nextSetURL = [responseDict valueForKeyPath:@"pagination.next_url"];

~

重要的是要了解大量帖子 WILL return,如果你 运行 这是一个循环并让它等待nextSetURL 到 return 为空。

Instagram 的 /tags/<tag>/media/recent 默认设置为 return 20 个结果(可以通过多种方式更改计数)。

再考虑两件事很重要

  • 速率限制
  • 剩余请求数

祝你好运,我期待看到你使用最近的 Instagram 标签构建的内容!

您的客户端处于沙盒模式,只能搜索受邀用户发布的照片​​标签。您必须登录 https://www.instagram.com/developer,编辑您的客户端并单击 "GO LIVE" 按钮。

如果 "GO LIVE" 按钮被禁用,您的应用程序已首先由 Instagram 审核:单击“权限”选项卡并提交以供审核。 (需要公司名称、联系电子邮件和隐私政策 URL 才能开始提交。)获得批准后,您将能够单击上线。