2016-06-21 41 views
-1

我想熟悉图书馆python-instagramInstagram的API Python错误

我做这个代码:

from instagram.client import InstagramAPI 
clientid = '***' 
clientsecret = '***' 
api = InstagramAPI(client_id=clientid, client_secret=clientsecret) 
tag_name = raw_input("Write the word that you want") 
filtered_media = api.tag_recent_media(count=20, max_id=1, tag_name=tag_name) 
for media in filtered_media: 
    print media.images['standard_resolution'].url 

,我得到使用命令行(我有一个苹果)以下错误:

Traceback (most recent call last): 
    File "test.py", line 7, in <module> 
    filtered_media = api.tag_recent_media(count=20, max_id=1, tag_name=tag_name) 
    File "build/bdist.macosx-10.6-intel/egg/instagram/bind.py", line 197, in _call 
    File "build/bdist.macosx-10.6-intel/egg/instagram/bind.py", line 189, in execute 
    File "build/bdist.macosx-10.6-intel/egg/instagram/bind.py", line 163, in _do_api_request 
instagram.bind.InstagramAPIError: (400) OAuthAccessTokenException-The access_token provided is invalid. 

有人知道是什么情况?谢谢

+2

您确定提供的acces_token有效吗? [这里](https://github.com/facebookarchive/python-instagram#obtaining-an-access-token)图书馆谈论访问令牌。 – syntonym

+0

@syntonym我如何获得access_token?我找到了这个网站(http://instagram.pixelunion.net/),但我认为这不是最好的方法:) – Jordi

+0

上面的'Here'是指向以下网页的链接:https://github.com/facebookarchive/python-instagram#obtaining-an-access-token你在哪里通过获取访问令牌。 – syntonym

回答

0

我建议你看看这个sample app。你会知道如何使用python-instagram库。

在您的代码中,您传递的客户端ID为InstagramAPI()。但根据他们的示例应用程序所需的参数是access_token。从sample_app.py

api = client.InstagramAPI(access_token=access_token, client_secret=CONFIG['client_secret']) 
    tag_search, next_tag = api.tag_search(q="backclimateaction") 
    tag_recent_media, next = api.tag_recent_media(tag_name=tag_search[0].name) 

的代码片断tag_search导致你必须有access_token。您可以阅读此documentation以了解如何从您的应用程序生成访问令牌。