Récemment, j'ai commencé à jouer avec Python, donc je voulais créer un Twiiter Bot comme point de départ.
Cependant, gérer le serveur uniquement pour exécuter le Bot est trop paresseux, j'en ai donc créé un qui peut être créé avec AWS Lambda.
$ tree .
.
├── README.md
├── deploy.py
├── event.json
├── lambda.json
├── lib
│ └── __init__.py
├── mezamashidokei_character.png
├── requirements.txt
├── setup.py
└── tweet.py
Avec lui, Hello World créera un bot Twitter qui tweetera l'heure actuelle toutes les 30 minutes.
Cela ressemble à ce que l'on appelle une plaque chauffante car elle vous permet de tout faire, du téléchargement à la planification des paramètres avec une seule commande.
Si vous jouez avec cela pour le moment, vous devriez pouvoir apprendre la couleur du développement de Bot avec Lambda + Python.
Pour le moment, le plus gênant est la première configuration.
--Créez un environnement virtuel avec virtualenv
Malheureusement, cela doit être fait manuellement. Cependant, je pense que de nombreuses personnes ont déjà configuré AWS et VirtualEnv, il ne s'agit donc en fait que de l'application Twitter.
Eh bien, demandons-lui de le faire en regardant divers liens, et définissons l'ID et le jeton d'accès obtenus dans le fichier .env.
# AWS settings
AWS_ACCOUNT_ID=12345678910
AWS_IAM_ROLE_NAME=lambda_basic_execution
AWS_REGION_NAME=ap-northeast-1
# Twitter account name
TWITTER_ACCOUNT_NAME=yamadatarou01234
# Twitter app consumer key, consumer secret
CONSUMER_KEY=hogehoge01234
CONSUMER_SECRET=fugafuga01234
# Twitter account tokens
ACCESS_TOKEN=nyannyan01234
ACCESS_TOKEN_SECRET=wanwan01234
# [Options] Virtualenv path
#Il peut être vide ici
CUSTOM_VENV_PATH=
Après cela, installez la dépendance.
$ pip install -q -t ./lib -r ./requirements.txt
Une fois que vous atteignez ce point, tapez la commande de configuration et
$ python setup.py
Je l'ai déployé.
$ python deploy.py
Upload?(y/n):y
Shedule?(y/n):y
Tout ira bien et un compte comme celui-ci sera créé.
Après le premier déploiement, il ne vous reste plus qu'à le modifier et à le développer.
Lors du développement local, vous pouvez exécuter le même environnement que lambda localement en tapant la commande suivante.
$ python-lambda-local -f lambda_handler ./tweet.py ./event.json
De plus, si vous souhaitez déployer à nouveau, vous pouvez facilement le télécharger en tapant la commande deploy.
$ python deploy.py
Account Name:your_twitter_bot_name
Upload?(y/n):y
Shedule?(y/n):n
Puisque la bibliothèque utilise Tweepy, il est bon de se concentrer sur la création de Bot en lisant API Reference.
En ce qui concerne la fonction permettant d'effectuer Tweet / Retweet / Favorite / Refollow, j'ai ajouté une fonction à tweet.py pour votre référence.
Il n'est pas bon que vous ne puissiez pas vous concentrer sur ce que vous voulez vraiment faire avec le déploiement et divers paramètres, donc l'écriture et le développement d'un script aussi simple progresseront.
Recommended Posts