Essayez d'utiliser l'API Twitter rapidement et facilement avec Python

introduction

Comme j'ai plus d'opportunités d'utiliser Python personnellement, cette fois, je vais essayer de tweeter et d'obtenir la chronologie avec juste une simple bibliothèque. Veuillez consulter d'autres sites jusqu'à ce que vous enregistriez l'application et obteniez la clé d'authentification. Je ne pense pas que vous trébucherez trop. (Veuillez noter que vous devez associer votre numéro de téléphone à votre compte Twitter.)

Comme préparation préliminaire, c'est une bonne idée de copier et coller diverses clés d'authentification et de les enregistrer sous config.py.

config.py


CONSUMER_KEY = "**************"
CONSUMER_SECRET = "**************"
ACCESS_TOKEN = "**************"
ACCESS_TOKEN_SECRET = "**************"

Écrivons des scripts simples et jouons avec Twitter.

# -*- coding:utf-8 -*-
import json, config
from requests_oauthlib import OAuth1Session

CK = config.CONSUMER_KEY
CS = config.CONSUMER_SECRET
AT = config.ACCESS_TOKEN
ATS = config.ACCESS_TOKEN_SECRET
twitter = OAuth1Session(CK, CS, AT, ATS)

J'ai utilisé request-oauthlib pour la bibliothèque d'authentification Oauth.

Essayez d'avoir votre propre chronologie

timeline.py


url = "https://api.twitter.com/1.1/statuses/user_timeline.json"

params ={'count' : 5}
req = twitter.get(url, params = params)

if req.status_code == 200:
    timeline = json.loads(req.text)
    for tweet in timeline:
        print(tweet['user']['name']+'::'+tweet['text'])
        print(tweet['created_at'])
        print('----------------------------------------------------')
else:
    print("ERROR: %d" % req.status_code)

Tearon :: L'interdiction de diffuser hier semble incroyable, mais elle semble avoir une mauvaise réputation, et surtout, c'est difficile à voir parce que c'est une horreur ou quelque chose comme ça. Tue Jan 03 13:38:22 +0000 2017 ---------------------------------------------------- Tearon::MINAMI KOIKE https://t.co/vFmSRLs89X Tue Jan 03 13:29:53 +0000 2017 ---------------------------------------------------- Tearon :: Le temps écrasant ne suffit pas car la radio que je voulais écouter à la fin de l'année est trop Tue Jan 03 13:12:42 +0000 2017 ---------------------------------------------------- Tearon :: Alors écoutez "Linda Linda" à Blue Hearts Tue Jan 03 11:46:17 +0000 2017 ---------------------------------------------------- Tearon :: Se vantant "J'ai gagné avec un pachinko!", Il semble qu'il y ait beaucoup de tension, mais je veux que vous remarquiez celui-ci avec les yeux d'un rat de colombe. Tue Jan 03 11:45:53 +0000 2017 ----------------------------------------------------

Essayez une recherche par mot-clé

search.py


url = "https://api.twitter.com/1.1/search/tweets.json"

print("Ce qu'il faut chercher?")
keyword = input('>> ')
print('----------------------------------------------------')


params = {'q' : keyword, 'count' : 5}

req = twitter.get(url, params = params)

if req.status_code == 200:
    search_timeline = json.loads(req.text)
    for tweet in search_timeline['statuses']:
        print(tweet['user']['name'] + '::' + tweet['text'])
        print(tweet['created_at'])
        print('----------------------------------------------------')
else:
    print("ERROR: %d" % req.status_code)

Ce qu'il faut chercher?

#Alpy dcg

----------------------------------------------------

La cheville de Galileo :: Alpy ANN est trop forte wwwwwwwww #Alpy dcg Tue Jan 03 15:21:09 +0000 2017 ---------------------------------------------------- Festival toujours merveilleux pour tous :: "C'est ... incroyable" www #Alpy dcg Tue Jan 03 15:21:08 +0000 2017 ---------------------------------------------------- Acclamations de fan de chanson :: Ne soyez pas gâté par la musique avec #Alpy dcg Tue Jan 03 15:21:07 +0000 2017 ---------------------------------------------------- New York Nyanchus :: Le pouvoir de la musique est incroyable ...!

#Alpy dcg Tue Jan 03 15:21:07 +0000 2017 ---------------------------------------------------- Shoo :: Comment utiliser Dean Fujioka quand vous dites génial www #Alpy dcg Tue Jan 03 15:21:07 +0000 2017 ----------------------------------------------------

Essayez de tweeter quelque chose

tweet.py


url = "https://api.twitter.com/1.1/statuses/update.json"

print("Que tweetez-vous?")
tweet = input('>> ')
print('----------------------------------------------------')

params = {"status" : tweet}

req = twitter.post(url, params = params)

if req.status_code == 200:
    print("Succeed!")
else:
    print("ERROR : %d"% req.status_code)

Que tweetez-vous?

La radio que je voulais écouter pendant la fin d'année et le nouvel an est de trop et je n'ai pas assez de temps

----------------------------------------------------
Succeed!

image.png

Publier avec une image

tweet_media.py


url_media = "https://upload.twitter.com/1.1/media/upload.json"
url_text = "https://api.twitter.com/1.1/statuses/update.json"

print("Entrez le nom de l'image jointe(format jpg uniquement)")
media_name = input('>> ')
print('-----------------------------------')

files = {"media" : open(media_name+".jpg ", 'rb')}
req_media = twitter.post(url_media, files = files)

if req_media.status_code != 200:
    print("MEDIA UPLOAD FAILED... %s", req_media.text)
    exit()

media_id = json.loads(req_media.text)['media_id']
print("MEDIA ID: %d" % media_id)

print("Que tweetez-vous?")
tweet = input('>> ')
print('-----------------------------------')

params = {"status" : tweet, "media_ids" : [media_id]}
req_media = twitter.post(url_text, params = params)

if req_media.status_code != 200:
    print("TEXT UPLOAD FAILED... %s", req_text.text)
    exit()

print("SUCCEED!")

Entrez le nom de l'image jointe (format jpg uniquement) >> asuka ----------------------------------- MEDIA ID: 816275347591208960 Que tweetez-vous? >> ASUKA SAITO ----------------------------------- SUCCEED!

image.png

en conclusion

C'est facile, mais j'ai été impressionné par le fait que l'API Twitter était plus facile à utiliser que prévu. En fait, je pensais l'implémenter en utilisant Tweepy, ce que j'avais entendu auparavant, mais il semble que cela n'ait pas été maintenu depuis longtemps, alors je l'ai arrêté. La prochaine fois, j'aimerais parler de Twitter BOT réalisé en utilisant ces connaissances.

J'ai été autorisé à référencer

Obtenez des tweets avec l'API Twitter tweepy n'est plus maintenu Rechercher des mots clés sur Twitter pour obtenir des images J'ai essayé Twitter avec Python Accéder à l'API Twitter avec Python

Recommended Posts

Essayez d'utiliser l'API Twitter rapidement et facilement avec Python
Deuxième moitié de la première journée d'étude de Python Essayez d'utiliser l'API Twitter avec Bottle
Utiliser l'API Twitter avec Python
Essayez d'utiliser l'API Twitter
Essayez d'utiliser l'API Twitter
Appelez l'API avec python3.
Exploration avec Python et Twitter API 1 - Fonction de recherche simple
J'ai essayé de frapper l'API avec le client python d'echonest
Une note sur l'utilisation de l'API Facebook avec le SDK Python
J'ai essayé la gestion du suivi avec l'API Twitter et Python (facile)
Accédez à l'API Etherpad-lite avec Python
Rationalisez la collecte d'informations avec l'API Twitter et les robots Slack
Publiez facilement sur Twitter avec Python 3
Accéder à l'API Twitter avec Python
Installez rapidement OpenCV2.4 (+ python) sur OS X et essayez l'exemple
Exploration avec Python et Twitter API 2-Implémentation de la fonction de recherche d'utilisateurs
Collecter des informations sur Twitter avec Python (API Twitter)
Essayez d'utiliser l'API Wunderlist en Python
Essayez d'utiliser l'API Kraken avec Python
Tweet à l'aide de l'API Twitter en Python
Essayez rapidement l'API Face de Microsoft en Python
[Python] Créez rapidement une API avec Flask
Téléchargez facilement des mp3 / mp4 avec python et youtube-dl!
Essayez d'accéder à l'API Spotify dans Django.
Mettez Cabocha 0.68 dans Windows et essayez d'analyser la dépendance avec Python
Exemple de code pour obtenir oauth_token et oauth_token_secret de l'API Twitter en Python 2.7
Obtenez des visites d'articles et des likes avec l'API Qiita + Python
Tweetez régulièrement avec l'API Twitter Go language
Essayez d'exécuter Google Chrome avec Python et Selenium
Essayez de résoudre le diagramme homme-machine avec Python
Essayez d'utiliser l'API BitFlyer Ligntning en Python
Conseils pour accéder à l'API ATND avec Python
Résolution du modèle Lorenz 96 avec Julia et Python
Archivez et compressez tout le répertoire avec python
Obtenez l'objet et le corps de Gmail avec Python et l'API Gmail
Essayez d'accéder à l'API YQL directement depuis Python 3
Essayez d'utiliser l'API ChatWork et l'API Qiita en Python
Créez rapidement un serveur API avec Python + Falcon
Essayez d'utiliser l'API DropBox Core avec Python
Essayez la touche d'un test basé sur les données avec Selenium Python Bindings et py.test
Essayez de gratter avec Python.
Faites facilement un bip avec python
Essayez de résoudre le livre des défis de programmation avec python3
Essayez de traduire avec Python tout en conservant la mise en page PDF
Accédez à l'API Twitter après l'authentification Oauth avec Django
Essayez facilement Amazon EMR / Cloud Dataproc avec Python [mrjob]
Essayez de résoudre le problème d'affectation du médecin de formation avec Python
Installez le sélénium sur votre Mac et essayez-le avec python
Essayez le fonctionnement de la base de données avec Python et visualisez avec d3
Visualisez la gamme d'insertions internes et externes avec python
Explorez l'URL contenue dans le tweet Twitter avec python
Suivi automatique sur Twitter avec python et sélénium! (RPA)
Envoyez et recevez Gmail via l'API Gmail en utilisant Python
Enregistrement facile des livres avec l'API et Rails de Google Livres
Exemples PHP et Python qui ont atteint l'API ChatWork