[PYTHON] J'enseignerai le bot Twitter de la manière la plus simple au Japon

A propos de l'auteur

--Étudiants de la Faculté des technologies de l'information, Université Toyo

Préparation

--Environnement où python peut être exécuté --Je veux que vous ayez un compte heroku

Let's start! Ici code source ** Il y a "requirements.txt" dans le code source. ** ** ** Ce sont les modules installés par heroku. ** **

tweet.py



import urllib
from requests_oauthlib import OAuth1Session
import requests
import sys
import os
import datetime

#Mettez la clé etc. dans la variable d'environnement
CK = os.environ.get("CK")
CS = os.environ["CS"]
AT = os.environ["AT"]
ATS = os.environ["ATS"]

#C'est comme créer une URL de signature
twitter = OAuth1Session(CK, CS, AT, ATS)

# statues/Utilisez la mise à jour. (Le même contenu de tweet dans un court laps de temps sera bloqué)
url = "https://api.twitter.com/1.1/statuses/update.json"

# ex.Bonjour! !! 11 décembre 2019 08:51:56
dtNow = datetime.datetime.now() + datetime.timedelta(hours=9)
tweet = "Bonjour! !!" + dtNow.strftime('%Y année%m mois%jour j%H:%M:%S')

params = {
    "status": tweet
}

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

if res.status_code == 200:
    print("SUCCESS")
else:
    print(res)


Mise en garde

statues / update ** sera bloqué si vous faites le même tweet dans un court laps de temps. ** (403 est de retour) J'ai donc utilisé datetime pour ajouter un fuseau horaire différent à la chaîne à chaque fois.

paramètres heroku cli

Procédez comme suit dans votre terminal: On considère que les réglages initiaux ont été effectués.

terminal


$ heroku login

$ heroku create [app name]

$ git init

$ git remote add heroku https://git.heroku.com/[your app name].git

$ git add .
$ git commit -m "First commit to heroku"
$ git push heroku master

Définir la clé d'API Twitter dans la variable d'environnement heroku

terminal


$ heroku config:set CK=APIkey CS=APIsecretkey AT=Accesskey token ATS=Accesstokensecret

Vérifiez s'il fonctionne réellement sur heroku

terminal


$ heroku run python tweet.py

OK si SUCCESS revient! !! !! !!

Définition de cron (planificateur) dans heroku

On suppose que la carte de crédit a été enregistrée.

terminal


$ heroku addons:add scheduler:standard

Aller à heroku

スクリーンショット 2019-12-11 9.30.39.png

Définissez comme ci-dessus et vous avez terminé! !! Vérifions-le dans 10 minutes! !!

Vive le bon travail!

Recommended Posts

J'enseignerai le bot Twitter de la manière la plus simple au Japon
Tweet à l'aide de l'API Twitter en Python
Le moyen le plus simple de configurer Last-Modified dans Flask
Le robot en ligne le plus simple au monde pour perdre du poids
Qu'est-ce que Jenkins? ] Installation-comment utiliser-test automatique / déploiement automatique sera expliqué de la manière la plus simple au monde