我使用此客户端python-instagram
与Python 3.4.3
对MacOS
。KeyError:'data'与Python Instagram API客户端
我的步骤:
- 注册于
instagram
一个新的客户,收到CLIENT_ID和client_secret - 皮普安装python-Instagram的
- 复制sample_app.py我的Mac
我跟着在Sample app
上的说明,我成功通过instagram授权我的应用程序,并尝试这,但他们都没有工作。在我点击<h2>
标头和计数器的API请求更改后,我看到Remaining API Calls = 486/500
。
如果我试图获得User Recent Media
,则在我的终端中会显示异常KeyError: 'data'
。如果我删除try - except
构造,将块留在try
,当我看到'错误:500内部服务器错误'时。
这里是回溯:
Traceback (most recent call last):
File "/Users/user/.envs/insta/lib/python3.4/site-packages/bottle.py", line 862, in _handle
return route.call(**args)
File "/Users/user/.envs/insta/lib/python3.4/site-packages/bottle.py", line 1732, in wrapper
rv = callback(*a, **ka)
File "sample_app.py", line 79, in on_recent
recent_media, next = api.user_recent_media()
File "/Users/user/.envs/insta/lib/python3.4/site-packages/instagram/bind.py", line 197, in _call
return method.execute()
File "/Users/user/.envs/insta/lib/python3.4/site-packages/instagram/bind.py", line 189, in execute
content, next = self._do_api_request(url, method, body, headers)
File "/Users/user/.envs/insta/lib/python3.4/site-packages/instagram/bind.py", line 151, in _do_api_request
obj = self.root_class.object_from_dictionary(entry)
File "/Users/user/.envs/insta/lib/python3.4/site-packages/instagram/models.py", line 99, in object_from_dictionary
for comment in entry['comments']['data']:
KeyError: 'data'
我所使用的代码是从官方的Python API客户端通过Instagram的样品。
这对我有效!一些错误...我在Python 3.4上测试它。 –
我花了一段时间才发现这个bug并“破解”它,但我无法在我们的docker上修复它,因为它们是从pip源代码构建的。我真的希望他们把这个修补程序合并到主分支中。 – anber
我也通过pip安装了python-instagram,但可以在@Forge指令后解决问题。如果您输入'pip uninstall python-instagram',系统将显示要卸载的文件列表以及各自的位置,包括models.py。说“n”为“继续(y/n)?”,不要卸载python-instagram,现在你知道文件在哪里。 –