【问题标题】:Instagram: Get photos from a tag after a specified photoInstagram:在指定照片之后从标签中获取照片
【发布时间】:2014-05-02 11:03:02
【问题描述】:

我正在为某事开发一个 instagram 刮刀,我正在尝试确定是否有可能获取一个标签的所有照片,这些照片的 id 或时间戳晚于我拥有的最后一张。

instagram API 文档毫无用处,因为它们没有任何关于分页的真实信息(我想我将不得不滥用)。

有人有什么想法吗?

【问题讨论】:

标签: instagram


【解决方案1】:

过去几天我一直在苦苦使用 Instagram API,所以这是我的 2 美分: 据我所知,如果您使用 /tags/tag-name/media/recent 调用 api,它只会返回一个列表(如果有项目)。如果数量超过 25 左右,您必须使用上一个请求中返回的分页值发出另一个请求。

为了获得一些控制权,我最初会遍历所有图像并将结果(只是 URL,而不是实际图像)存储到数据库中。现在我可以随心所欲地操纵。当我想更新时(我现在手动进行,但可能是一项 cron 工作或使用 real-time api),我重新阅读所有图像,与我的数据库中的内容进行比较并添加可能的新图像。然后我的应用程序从我的数据库中读取 url 和信息(顺便说一句,这比通过 instagram api 快得多,每个请求只会返回大约 25 张图像 - 无论您输入的任何“计数”参数值如何请求 url) 并显示它。

我正在为一个害怕人们使用他们的专用标签(用于比赛)发布 nsfw 或任何图片的客户开发这个 - 通过上述设置,我可以为他们提供一个界面,他们可以在其中检查和标记图像然后显示在应用程序中。

需要注意的一点是用户删除他的图片时;您将不得不找到一种方法来检查这一点。目前(因为我很懒)我加载所有图像并使用 jquery 检查加载图像的错误。如果有,我会从数据库中删除图像(通过 ajax)。

我不确定分页是否会对您有所帮助:据我所知,分页响应与每个页面上实际图像对象的 id 无关 - 所以理论上跳到某个特定的分页 id如果同时删除了足够多的图像,则页面(即日期)可能明天无法工作。

【讨论】:

  • 干杯约翰。碰巧的是,当我去年构建系统时,我们做了几乎完全相同的事情。您可能会发现很方便的一件事(我花了很长时间才发现)是您想要 oembed 链接,而不是图像的 amazon s3 链接,否则它们会过期。
  • Duh,刚刚意识到这是一个老问题......对不起;)这是一个很好的提示,谢谢!
【解决方案2】:

要获取所有图像而不是最新的 20 张,只需将 &count=-1 附加到您的 api 调用 - 就这么简单。 无论哪种情况,每个 json 对象都有一个时间戳 - 或者如果您愿意,可以使用 max_tag_id

在这里查看我的帖子:there any way to show more than 20 photos of the instagram API?

* 2014 年 4 月更新count=-1 不再可用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多