当我使用 python-instagram 库时,instagram api keep raise 'You must provide a client_id' exception
Posted
技术标签:
【中文标题】当我使用 python-instagram 库时,instagram api keep raise \'You must provide a client_id\' exception【英文标题】:instagram api keep raise 'You must provide a client_id' exception when I use python-instagram library当我使用 python-instagram 库时,instagram api keep raise 'You must provide a client_id' exception 【发布时间】:2016-11-14 18:13:24 【问题描述】:我在 instagram 开发者仪表板中注册了我的应用程序,并尝试使用 Facebook 制作的 python-instagram 库。
运行 sample_app.py 代码后,我访问了我的测试网站(localhost:8515)并使用我的 instagram id 成功登录。但是,由于此异常“您必须提供 client_id”,我无法获取访问代码
我也尝试使用这个库(https://github.com/Seraphicer/python-instagram-ext)做同样的事情,这是因为他们提取了请求的原始库并维护它。
【问题讨论】:
您必须为我们添加至少一行代码.. 寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为,具体问题或错误和必要的最短代码在问题本身中重现它。没有明确的问题陈述的问题对其他读者没有用处。请参阅:How to create a Minimal, Complete, and Verifiable example。 现在有同样的问题,过去的代码工作正常。看起来这是 Instagram 问题(与沙盒有关?)。 【参考方案1】:有同样的问题,显然是由于 instagram api 或 httplib2 更新。为我修复了https://github.com/vgavro/python-instagram/commit/9dfc264571ad7c343af3899445d13afedf23e3aa(链接到我的 python-instagram 分支以及我需要的补丁)
【讨论】:
恕我直言,这是正确答案!这个补丁解决了我的问题。应该避免按照 Peter 的建议重新实现。【参考方案2】:我已经自己动手了;无法让 python-instagram 工作。可能会抛弃整个图书馆。最近的 bug 太多了,我认为它没有得到维护。
@classmethod
def exchange_code_for_access_token(cls, code, redirect_uri, **kwargs):
url = u'https://api.instagram.com/oauth/access_token'
data =
u'client_id': cls.get_client_id(),
u'client_secret': cls.get_client_secret(),
u'code': code,
u'grant_type': u'authorization_code',
u'redirect_uri': redirect_uri
response = requests.post(url, data=data)
account_data = json.loads(response.content)
return account_data
【讨论】:
以上是关于当我使用 python-instagram 库时,instagram api keep raise 'You must provide a client_id' exception的主要内容,如果未能解决你的问题,请参考以下文章
KeyError:使用 Python Instagram API 客户端的“数据”