C'est trop facile d'accéder à l'API Twitter avec rauth et je l'ai ...

Je devais accéder à l'API Twitter, alors quand j'ai essayé de l'implémenter moi-même, c'était ... eh bien ... c'était un problème. Ainsi, quand j'ai cherché une bibliothèque, j'ai trouvé une bibliothèque appelée rauth, alors je l'ai essayée.

Puisqu'il s'agit d'une bibliothèque OAuth (et non d'une bibliothèque Twitter), les API autres que Twitter peuvent être utilisées tant qu'il s'agit d'une authentification OAuth. De plus, cela dépend de Requests, et cela fait du bien de pouvoir écrire le code de la partie requête HTTP proprement.

Vous trouverez ci-dessous un exemple de marmonnements de «vérité» sur ma chronologie. "Hé, n'est-ce pas facile?"

rauth_sample


import rauth

# access_token/access_token_Prémisse d'obtenir un secret
session = rauth.OAuth1Session(
    "consumer_key",
    "consumer_secret",
    "access_token",
    "access_token_secret")

#Il existe un moyen de définir la baseURL sur session, mais il est omis.
session.post(
    'https://api.twitter.com/1.1/statuses/update.json',
    data={'status': 'rauth'})

Dans l'exemple ci-dessus, on suppose que access_token / access_token_secret a été obtenu à l'avance, mais en ce qui concerne le README, il semble qu'il ne soit pas si difficile à obtenir. Réessayons bientôt.

Au fait, elle ne pouvait pas.

Postscript

L'API baseURL peut être omise en définissant OAuth1Service sur OAuth1Session.

rauth_sample_set_service


twitter = rauth.OAuth1Service(
    name='twitter',
    consumer_key='consumer_key',
    consumer_secret='consumer_secret',
    request_token_url='https://api.twitter.com/oauth/request_token',
    access_token_url='https://api.twitter.com/oauth/access_token',
    authorize_url='https://api.twitter.com/oauth/authorize',
    base_url='https://api.twitter.com/1.1/')

session = rauth.OAuth1Session(
    consumer_key='consumer_key',
    consumer_secret='consumer_secret',
    access_token='access_token',
    access_token_secret='access_token_secret',
    service=twitter)

#La baseURL définie dans Service peut être omise
res = session.get(
    url='statuses/home_timeline.json',
    params={'count': 10})
print(res.json())

Recommended Posts

C'est trop facile d'accéder à l'API Twitter avec rauth et je l'ai ...
J'ai essayé la gestion du suivi avec l'API Twitter et Python (facile)
J'ai essayé de noter la syntaxe trop humoristique et humoristique en utilisant l'API COTOHA.
API Nifty Cloud facile à utiliser avec botocore et python
C'était trop facile d'utiliser une base de données existante avec Django
Rationalisez la collecte d'informations avec l'API Twitter et les robots Slack
J'ai essayé de publier automatiquement sur ChatWork au moment du déploiement avec Fabric et ChatWork Api
Accordez un jeton d'accès avec la commande curl et POST l'API
Accéder à l'API Twitter avec Python
J'ai essayé de supprimer régulièrement les mauvais tweets avec l'API AWS Lambda + Twitter
J'ai essayé d'exprimer de la tristesse et de la joie face au problème du mariage stable.
J'ai essayé d'obtenir le code d'authentification de l'API Qiita avec Python.
Recherchez des mots-clés Twitter avec tweepy et écrivez les résultats dans Excel
Exemple de code pour obtenir oauth_token et oauth_token_secret de l'API Twitter en Python 2.7
J'ai essayé d'apprendre l'angle du péché et du cos avec le chainer
J'ai essayé d'obtenir les informations sur le film de l'API TMDb avec Python
J'ai essayé de contrôler la bande passante et le délai du réseau avec la commande tc
Accéder à l'API Docker Remote avec des requêtes
J'ai essayé de toucher l'API COTOHA
Je ne peux pas utiliser le paramètre "next_results" dans l'API de recherche d'API Twitter! ?? Causes et remèdes
Lorsque j'ai essayé de changer le mot de passe root avec ansible, je ne pouvais pas y accéder.
[Introduction à AWS] J'ai essayé de porter une application de conversation et de jouer avec text2speech @ AWS ♪
J'ai essayé de créer une API de reconnaissance d'image simple avec Fast API et Tensorflow
Tweetez régulièrement avec l'API Twitter Go language
J'ai essayé de sauvegarder les données avec discorde
Je voulais jouer avec la courbe de Bézier
J'ai essayé de notifier la mise à jour de "Devenir romancier" en utilisant "IFTTT" et "Devenir un romancier API"
J'ai essayé d'automatiser la mise à jour de l'article du blog Livedoor avec Python et sélénium.
Comment changer le comportement lors du chargement / vidage de yaml avec PyYAML et ses détails
Je voulais juste extraire les données de la date et de l'heure souhaitées avec Django
J'ai essayé de comparer la vitesse de traitement avec dplyr de R et pandas de Python
Il est facile d'exécuter SQL avec Python et de générer le résultat dans Excel
J'ai essayé d'entraîner la fonction péché avec chainer
J'ai essayé de lire et d'enregistrer automatiquement avec VOICEROID2 2
IoT facile pour démarrer avec Raspeye et MESH
J'ai essayé d'implémenter et d'apprendre DCGAN avec PyTorch
Je veux gérer l'optimisation avec python et cplex
[Introduction à WordCloud] Il est facile à utiliser même avec Jetson-nano ♬
J'ai essayé de toucher un fichier CSV avec Python
J'ai essayé de résoudre Soma Cube avec python
J'ai essayé de lire et d'enregistrer automatiquement avec VOICEROID2
Il est trop difficile d'afficher le japonais avec le python3 de Vim.
Je veux hériter de l'arrière avec la classe de données python
Exploration avec Python et Twitter API 1 - Fonction de recherche simple
Ce n'est pas facile d'écrire Python, c'est facile d'écrire numpy et scipy
J'ai essayé de découvrir notre obscurité avec l'API Chatwork
Publiez sur votre compte en utilisant l'API sur Twitter
Obtenez des commentaires et des abonnés avec l'API de données YouTube
J'ai essayé de résoudre le problème avec Python Vol.1
J'ai essayé d'implémenter Grad-CAM avec keras et tensorflow
J'ai essayé de frapper l'API avec le client python d'echonest
Je t'ai écrit pour regarder le signal avec Go
Un script qui facilite la création de menus riches avec l'API de messagerie LINE
J'ai créé un serveur avec socket Python et ssl et j'ai essayé d'y accéder depuis le navigateur
J'ai aussi essayé d'imiter la fonction monade et la monade d'état avec le générateur en Python