2016-11-11 8 views
2

私は、特定のクエリに従ってソーシャルメディアからデータを引き出し、分析するプロジェクトに取り組んでいます。現在Instagramのメディアデータを取得しています。 私がしたいのは、クエリを入力してJSONのメディア/お気に入り/コメントを取得することだけです。彼らのAPIのドキュメントを読んでいます。ブラウザで自分のアカウントを使用する権限を与えずにアクセストークンを取得できないことがわかりました。ユーザーがいなければならないことを知っているので、自分のアカウントを使っても問題ありません。しかし問題は、ブラウザからアクセストークンを手動で取得したくないということです。Instagram 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

Instagramのページにログインせずにaccess_tokenを取得することはできませんOAuth認証の全体のポイントのthats。

access_tokenを手動で取得し、Instagram access_tokenの経験から6年間使用してください。新しいaccess_tokenを取得する必要がある時間は、疑わしいアクティビティが検出されたためInstagramがそれを取り消す場合だけです。したがって、あまりにも多くのバックツーバックコールを自動化せずにAPIを慎重に使用する限り、同じaccess_tokenを使用するとよいでしょう。

+0

ありがとうございました。クライアント側の暗黙のフローから取得したため、前に取得したアクセストークンが期限切れになりました。私がサーバー側のフローから取得するアクセストークンが期限切れにならない場合は、私は良いと思います:) –

+0

はサンドボックスまたはライブモードにありますか?私は主にサーバー側のoauthを使用して、それが違いを生むかもしれない、わからない – krisrak

関連する問題