现在有没有办法在不使用访问令牌的情况下获取 instagram 提要(06/2016)?

Posted

技术标签:

【中文标题】现在有没有办法在不使用访问令牌的情况下获取 instagram 提要(06/2016)?【英文标题】:Is there still a way to fetch instagram feed without using access token now (06/2016)? 【发布时间】:2016-10-18 23:02:07 【问题描述】:

我遇到了一个问题,即我的 Instagram API 访问令牌经常过期,我红色了文档并了解虽然令牌通常不会过期,但出于任何安全原因或任何原因,Instagram 可能会决定随时使令牌过期。

我知道当它过期时,我需要设置一个身份验证过程并请求一个新的令牌和所有这些东西。但问题是我的应用程序只是检索我自己的提要以显示在我自己的网站上,一旦令牌过期,设置这样的过程就没有意义,我唯一能做的就是手动检索和更新我的代码中的令牌。

所以我想知道是否还有一种方法可以在不使用访问令牌的情况下获取提要,因为我只是在提取自己的提要。或者有没有其他方法可以解决这个问题?

感谢您的帮助。

【问题讨论】:

有一个 php 项目使用 Instagram 内部 API。它可以完成网站可以完成的大部分功能。它不需要访问令牌,它使用您的用户名和密码:github.com/mgp25/Instagram-API 【参考方案1】:

https://www.instagram.com/anyuser/media 今天停止工作。您可以改用https://www.instagram.com/anyuser/?__a=1

【讨论】:

你知道如何使用 ?__a=1 方法获取下一页吗?返回的JSON中有page_info.end_cursor,但是不清楚具体怎么用。 @VladimirLebedev 使用 max_id 参数,例如instagram.com/anyuser/?__a=1&max_id=[Last id on previous call] instagram.com/anyuser/?__a=1 它不再可访问。还有什么吗? 是的,他们似乎在 Facebook analytica 事件之后将其撤下了。 @KarimHaddad 如果适合你,有一个 PHP 库可以通过用户/密码 github.com/mgp25/Instagram-API 连接【参考方案2】:

编辑:您现在可以通过以下链接获取个人资料的 json 数据:https://www.instagram.com/anyuser/?__a=1


如果您的个人资料设置为公开模式,您可以从 json 响应中获取您的数据,只需编写: https://www.instagram.com/YOURUSERNAME/media

示例:https://www.instagram.com/bestcookingvideos/media

你可以看到 json 结构:http://json.parser.online.fr/

注意:此页面不再活跃:https://www.instagram.com/YOURUSERNAME/media

2020.11.17

在答案中,您可以通过https://www.instagram.com/anyuser/?__a=1 获得12 个最近的帖子 的个人资料详细信息,但问题是这不允许获取媒体分页。因此,您需要使用

https://instagram.com/graphql/query/?query_id=17888483320059182&variables="id":"15165085906","first":20,"after":null

上述路由将返回属于该id的相关用户的前20个媒体,当我们需要获取下20个时,我们需要传递初始调用中的end_cursor

更多信息请参考related answer

【讨论】:

@Dimitrije Zoroski,你知道我如何迭代以获得更多帖子吗?或者是否可以要求超过 20 个帖子? @Carol 是的。你可以!带有链接:instagram.com/bestcookingvideos/media/?max_id=LastIdOfItem LastIdOfItem 是您在 json 文本中的最后一项的 id,id 是这样的。 “id”:“1394603188540132178_3272768483”。 确认工作于 2017 年 10 月 19 日。虽然我很确定这不是受支持的 API。 这个功能刚刚停止了吗?【参考方案3】:

2021 年更新:由于 Instagram 的最新变化,这不再是可靠的解决方案。

你可以使用我开发的这个jquery库:

https://github.com/BanNsS1/jquery.instagramFeed

不需要 api 令牌

编辑以下评论:

它只是 jquery 驱动的库,允许您加载任何公共 instagram 个人资料的前 12 项。

它是如何解决问题的?加载 1 到 12 个最后的帖子而不需要访问令牌/api 密钥

<script type="text/javascript" src="jquery.instagramFeed.min.js"></script>
<script type="text/javascript">
    (function($)
        $(window).on('load', function()
            $.instagramFeed(
                'username': 'instagram',
                'container': "#instagram-feed1",
                'display_profile': true,
                'display_biography': true,
                'display_gallery': true,
                'get_raw_json': false,
                'callback': null,
                'styling': true,
                'items': 8,
                'items_per_row': 4,
                'margin': 1 
            );
        );
    )(jQuery);
</script>

想要更多?它将需要 2 次点击和一些滚动。

【讨论】:

我们可以使用这种方法获取我们自己的供稿(我们关注的人的故事)吗? 还没有,我马上去看看 不幸的是,jquery.instagramFeed 在 2021 年不再有效。如果有人在他们的网站上仍然需要 Instagram 提要 - 请查看 github.com/restyler/inwidget-proxified 作为服务器端替代方案。

以上是关于现在有没有办法在不使用访问令牌的情况下获取 instagram 提要(06/2016)?的主要内容,如果未能解决你的问题,请参考以下文章

在不往返授权服务器的情况下检查访问令牌的有效性?

有啥方法可以在不使用访问令牌/客户端 ID 的情况下获取特定主题标签的 Instagram 图像?

如何在不登录的情况下从 Instagram 获取 oauth 2 访问令牌(隐式流程)?

如何在不使用会话的情况下获取图形令牌?

有没有办法在不使用 gdata-java-client 的情况下访问日历的条目?

有没有办法在不使用画布 API 的情况下从图像文件中获取二进制数据?