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

时间:2016-11-11 17:15:31

标签: http web backend instagram-api

我正在开展一个项目,根据某些查询从社交媒体中提取数据并对其进行分析。目前我正在提取Instagram媒体数据。 我唯一想做的就是输入一个查询并获取JSON媒体/喜欢/评论......我阅读了他们的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)

1 个答案:

答案 0 :(得分:1)

如果没有登录Instagram页面就无法获得access_token,这就是oauth身份验证的全部要点。

您必须手动获取access_token并根据我的经验更新Instagram access_token永不过期,我已经使用了6年。只有当你因为检测到可疑活动而撤销它时,你才能获得新的access_token。因此,只要您小心使用API​​而不自动执行过多的背靠背调用,您就应该使用相同的access_token