ecl_twitter jest niesamowite Twitter biblioteki dla Pythona 2.7+. To sprawia, że API Twittera radość z użytkowania, a integracja Django jest pieczony w. Aby dowiedzieć się więcej, czytaj dalej!
Jeśli masz problem lub zgłaszania żądania funkcji, dodaj ją do naszego trackera emisyjnej.
instalacji
ECL Twitter jest PyPI, więc zalecamy instalację poprzez pip:
& Nbsp; pip install ECL-twitter
Konfiguracja
Jeśli chcesz korzystać ECL Twitter dla samego wniosku stoiska (np, w skrypcie piszesz ściągnąć tweets), musisz ustawić TWITTER_KEY zmiennych, TWITTER_SECRET i TWITTER_REDIRECT_URL z wartościami właściwymi dla aplikacja Twitter .:
TWITTER_KEY eksport = "Gmxb5Rh7gpOpzunQ7SQcOA"
eksport TWITTER_SECRET = "irhZg1W5NO2r7M9IRwhjHKpzKPjJ3HXc6RYCbrM0"
eksport TWITTER_REDIRECT_URL = "http://example.com/oauth/complete"
Jeśli jesteś zainteresowany tylko w integracji z Django, przeczytaj django.
Uwierzytelnianie
Zrobiliśmy uwierzytelniania bardzo prosta. Prawdopodobnie zbyt proste, aby być uczciwym .:
>>> Z ecl_twitter importu Twitterze
>>> Twitter = Twitter ()
>>> Url, znak, tajne = twitter.generate_authorization ()
>>> Url
https://api.twitter.com/oauth/authorize?oauth_token=XXX
Po otwarciu tego adresu URL w przeglądarce i pozwala na stosowanie, zostaniesz przekierowany do strony z kodem PIN. To jest Twój weryfikator .:
>>> Twitter = Twitter (znak, tajne)
>>> Dane = twitter.oauth.access_token (oauth_verifier = weryfikator)
>>> Dane
Gratulacje, pomyślnie zweryfikowane z Twittera (powiedział, że to będzie proste). Dane jest obiektem Objectifier które powinno zawierać znak, tajne, ID użytkownika i pseudonim.
Aby połączyć się z API, korzystać z nowo nabytej dostęp tokena i dostępu Token sekret:
>>> Twitter = Twitter (data.oauth_token, data.oauth_token_secret)
>>> Tweety = twitter.statuses.user_timeline ()
>>> tweety
Tak, tak. To jest. Bądźcie płodni i rozmnażajcie się.
Integracja z Django
Co zrobiliśmy powyżej jest łatwe. W przypadku projektów Django, zrobiliśmy to jeszcze łatwiejszym. W widokach pliku:
z django.contrib.auth importu uwierzytelnienia, zaloguj się
z importu django.http HttpResponseRedirect
z ecl_twitter importu twitter_begin, twitter_callback
z .models importu Użytkownika
# ...
twitter_begin
oauth_twitter_begin def (wniosek):
& Nbsp; karnet
twitter_callback
oauth_twitter_complete def (żądanie, danych):
& Nbsp; użytkownika, _ = User.objects.get_or_create (screen_name = data.screen_name, domyślnie = {
& Nbsp; "access_token": data.oauth_token,
& Nbsp; "access_token_secret": data.oauth_token_secret})
& Nbsp; user = Uwierzytelnianie (id = user.id)
& Nbsp; logowanie (wniosek, użytkownik)
& Nbsp; powrócić HttpResponseRedirect (do tyłu ("domu"))
Dodaj te wartości do ustawienia .:
# Modelu użytkownika, że będziesz używać do uwierzytelniania Twitter.
PRIMARY_USER_MODEL = "app.User"
AUTHENTICATION_BACKENDS = (
& Nbsp; # ...
& Nbsp; "ecl_twitter.backends.TwitterAuthBackend",
)
TWITTER_KEY = "Gmxb5Rh7gpOpzunQ7SQcOA"
TWITTER_SECRET = "irhZg1W5NO2r7M9IRwhjHKpzKPjJ3HXc6RYCbrM0"
TWITTER_REDIRECT_URL = "http://example.com/oauth/complete"
Następnie map powyższe poglądy w Twojej urls.py:
# ...
urlpatterns = patterns ('app.views ",
& Nbsp; # ...
& Nbsp; url (r '^ oauth / twitter / zacząć $', 'oauth_twitter_begin "),
& Nbsp; url (r '^ oauth / twitter / pełna $', 'oauth_twitter_complete "),
)
Jesteś skończony. . Och, możesz również dodać kilka pól do przechowywania Twitter pól związanych z modelu użytkownika
Wymagania :
- Python
- Django
Komentarze nie znaleziono