在没有浏览器的情况下从 Instagram API 获取访问令牌?

Get an access token from Instagram API WITHOUT a browser?

我正在做一个项目,根据某些查询从社交媒体中提取数据并进行分析。目前我正在提取 Instagram 媒体数据。 我唯一想做的就是输入一个查询并得到 JSON media/likes/comments...。我阅读了他们 API 的文档。我发现如果不在浏览器中使用我自己的帐户进行授权,我将无法获得访问令牌。我知道肯定有一个用户,所以我假设使用我自己的帐户就可以了。但问题是我不想从浏览器手动获取访问令牌。

目前我正在对访问令牌进行硬编码。它会过期,我每次都必须手动更新它。我敢打赌有更好的解决方案。有人可以帮帮我吗?谢谢

class instagramFeed():

    CLIENT_ID = "MY-APP-ID" 
    REDIRECT_URI = "MY-ORGANIZATIONS-URI"
    ACCESS_TOKEN = "I MANUALLY GENERATE THIS TOKEN"
    query = None

    def __init__(self):
        None

    def get_data(self, query):
        response = urllib2.urlopen("https://api.instagram.com/v1/tags/search?q="+query+"&access_token="+self.ACCESS_TOKEN)

不登录 Instagram 页面就无法获得 access_token,这就是 oauth 身份验证的全部意义所在。

你将不得不手动获取access_token并更新,根据我的经验,Instagram access_token 永不过期,我已经使用了 6 年。只有当 Instagram 因检测到可疑 activity 而将其撤销时,您才需要获取新的 access_token。因此,只要您小心使用 API,不要自动执行过多的背靠背调用,您应该会很好地使用相同的 access_token