Ich verwende diesen Client python-instagram
mit Python 3.4.3
auf MacOS
.KeyError: 'Daten' mit Python Instagram API-Client
Meine Schritte:
- einen neuen Client auf
instagram
erhielt client_id Einschreibebriefe und client_secret - Pip python-instagram
- kopieren sample_app.py zu meinem Mac installieren
Ich folgte Die Anweisungen auf Sample app
, ich habe meine App über Instagram erfolgreich autorisiert und versuchte dies list of examples, aber keiner von ihnen funktionierte. Nach meinem Klick ändert sich die <h2>
Header und Zähler der API-Anfragen und ich sehe Remaining API Calls = 486/500
.
Wenn ich versuche, eine Ausnahme KeyError: 'data'
zeigt in meinem Terminal. Wenn ich try - except
Konstruktion löschen, Block in try
verlassen, wenn ich sehe 'Fehler: 500 Interner Server Fehler'. Hier
ist die Zurückverfolgungs:
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'
Der gesamte Code I verwendet wird, ist aus der Probe von dem offiziellen Python-API-Client von Instagram.
Das hat für mich funktioniert! Irgendein Fehler ... Ich habe es auf Python 3.4 getestet. –
Es hat eine Weile gedauert, bis ich diesen Bug entdeckte und "hackte", aber ich kann ihn nicht auf unseren Dockern reparieren, weil er aus den Pip-Quellen stammt. Ich hoffe wirklich, dass sie diesen Fix in die Hauptzweig zusammenführen. – anber
Ich habe auch Python-Instagram über Pip installiert, aber könnte das Problem nach @Forge Anweisung lösen. Wenn Sie 'pip uninstall python-instagram' eingeben, zeigt das System eine Liste der zu deinstallierenden Dateien mit entsprechenden Speicherorten an, einschließlich models.py. Sagen Sie "n" zu "Fortfahren (y/n)?", Um Python-Instagram NICHT zu deinstallieren, und jetzt wissen Sie, wo sich die Datei befindet. –