[Django] Instagram의 API를 사용하여 Python으로 정보 얻기
소개
파이썬에서 Instagram API를 사용하여 사용자 정보를 얻었습니다. 현재 공개되고 있는 정보가 적다고 느꼈으므로 비망록으로서 남겨 둡니다.
액세스 토큰을 이용하기 위한 인증 코드의 취득으로부터 액세스 토큰의 취득과 유저의 정보의 취득까지를 실시합니다.
전제로 facebook for developers에서 앱 설정을 마친 상태로 합니다.
또 이번에는 Instagram Basic Display를 사용합니다. 설정에 대한 자세한 방법은 아래를 참조하십시오.
환경
장고 3.1
파이썬 3.9.2
facebook for developers 설정됨
Instagram Basic Display 설정됨
인증 코드 얻기
먼저
pip install
에서 instagram-basic-display
를 가져옵니다.$ pip3 install instagram-basic-display
$ python manage.py shell
>>> from instagram_basic_display.InstagramBasicDisplay import InstagramBasicDisplay
>>> instagram_basic_display = InstagramBasicDisplay(app_id ='InstagramアプリID', app_secret='Instagram App Secret',redirect_url='設定したリダイレクトURL')
# redirect_urlはhttpで設定できないのでhttpsにすること
>>> print(instagram_basic_display.get_login_url())
https://api.instagram.com/oauth/authorize?client_id=11111111111111&redirect_uri=https://hogehoge.com%2F&scope=user_profile%2Cuser_media&response_type=code
# printしたURLをクリック
URL을 클릭하면 아래 화면으로 날 수 있으므로
Allow
를 클릭하십시오.성공하면 이전 단계에서 지정한 리디렉션 URL로 리디렉션되고 URL에 인증 코드가 추가됩니다.
https://hogehoge.com?code=NOFDNAON3DKMFDMDOKFDMOLFKMDFK
# ↑code=から右の部分が認証コードになる(1時間だけ有効)
여기에서 얻은 인증 코드를 복사하세요.
액세스 토큰 얻기
방금 얻은 인증 코드를 사용하여 액세스 토큰을 얻습니다.
>>> auth_token = instagram_basic_display.get_o_auth_token('取得した認証コード')
>>> auth_token
{'access_token': 'アクセストークン', 'user_id': 'ユーザーID'}
사용자 정보 얻기
액세스 토큰을 이용하여 사용자 정보도 취득합니다.
>>> instagram_basic_display.set_access_token('取得したアクセストークン')
>>> profile = instagram_basic_display.get_user_profile()
>>> profile
{'account_type': 'PERSONAL', 'id': '1111111111111', 'media_count': 1, 'username': 'hogehoge'}
이제 사용자 정보를 얻을 수 있습니다.
참고
Reference
이 문제에 관하여([Django] Instagram의 API를 사용하여 Python으로 정보 얻기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Jackson123/items/fe647f20a3487c13de0d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)