2012-04-23 2 views
3

私はTwitter APIで遊んでみたいですが、djangoのソーシャル認証でログインした後、APIへのアクセス方法、TimeLine、RTなどを取得する方法が失われています。Djangoの社会的な認証でログインした後にTwitter APIにアクセスするには?

誰かがDjango social Authで認証した後、ストリーミングやタイムラインなどにアクセスするために使用できる別のTwitterライブラリの例を提供できますか?

私はtweepyをチェックしていますが、tweepy authメソッドを使用する必要がない場合は、使用方法がわかりません。

答えて

4

This example from the Django-social-auth docsあなたが必要なものを示しています。

>>> from pprint import pprint 
>>> from social_auth.models import UserSocialAuth 
>>> instance = UserSocialAuth.objects.filter(provider='twitter').get(...) 
>>> pprint(instance.tokens) 
{u'oauth_token': u'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
u'_token_secret': u'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy'} 

UserSocialAuthモデルが自動的に必要なアクセストークンを格納します。 tokens属性でアクセスします。

希望に役立ちます。

1

ユーザーがあなたのアプリにTwitterへのアクセスを許可すると、アクセストークン&がアクセストークンの秘密になります。それをあなたのデータベースに保存してください。これを使用してAPIにアクセスします。

例である:https://github.com/tweepy/tweepy/blob/master/examples/oauth.py

2

あなたはユーザーに関連付けられているUserSocialAuthインスタンスからトークンを取得する必要があります:インスタンスを取得した後

try: 
     instance = UserSocialAuth.objects.filter(user=request.user).get() 
except ObjectDoesNotExist: 
     return redirect(getattr(settings,'LOGIN_URL','/login/twitter/')) 

、キーを入手:トークンとシークレットを

oauth_access_token=(instance.tokens).get('oauth_token') 
oauth_access_secret=(instance.tokens).get('oauth_token_secret') 

、することができます今すぐあなたの選択したパッケージを使用してツイッターに接続します。

関連する問題