[PYTHON] Poste regelmäßig mit AWS Lambda auf Twitter!

Überblick

Ich dachte, es wäre praktisch, wenn ich regelmäßig mit Lambda auf AWS auf Twitter posten könnte, also fasste ich es zusammen. スクリーンショット 2020-10-16 23.34.23.png

Erstellungsverfahren

Schöpfungsfluss

  1. Erstellen Sie mit Docker eine Umgebung
  2. Twitter-Post von Python

Einzelheiten

1. Erstellen einer Lambda-Umgebung mit Docker

Ich habe Docker verwendet, um nicht standardisierte Bibliotheken mit Lambada zu verwenden. Es ist praktisch, lambci / docker-lambda zu verwenden, um Docker mit Lambda zu verwenden. Dieser Artikel war hilfreich. [Reproduktion der lokalen Entwicklungsumgebung mit AWS Lambda x Python](https://qiita.com/i35_267/items/15b981acae8cf7c763ae#-docker-lambda%E3%82%92%E8%A7%A6%E3%81% A3% E3% 81% A6% E3% 81% BF% E3% 82% 8B)

Dockerfile


FROM lambci/lambda:build-python3.8
ENV AWS_DEFAULT_REGION ap-northeast-1

ADD . .

CMD pip3 install -r requirements.txt -t /var/task && \
  zip -9 deploy_package.zip lambda_function.py && \
  zip -r9 deploy_package.zip *

Ich bin mir nicht sicher über die Optionen für "zip -9".

requirements.txt


twitter

2. Twitter-Beitrag

Sie können einfach über die Bibliothek hier twittern sixohsix / twitter. Artikel, die ich als Referenz verwendet habe ・ Mit Python3 einfach auf Twitter posten

lambda_funcyion.py


import twitter

def lambda_handler(event, context):
    
    auth = twitter.OAuth(
      token="Zeichen", 
      token_secret="Token Geheimnis", 
      consumer_key="Schlüssel", 
      consumer_secret="Geheimnis"
    )
    context = 'Ich habe heute auch mein Bestes gegeben!'
    t = twitter.Twitter(auth=auth)
    t.statuses.update(status=context)
   
    

3. Lokales Debug

Es ist mühsam, es Lambda einzeln zu geben und es zu überprüfen, also überprüfen Sie es lokal.

$ docker run -v "$PWD":/var/task lambci/lambda:python3.8 lambda_function.lambda_handler [event]

Sie sollten damit posten.

4. Bereitstellen

Stellen Sie sie zunächst in einer Zip-Datei zusammen.

$ docker build -t mylambda .
$ docker run -v "$PWD":/var/task mylambda

Erstellen Sie als Nächstes eine Lambda-Funktion über die AWS-Konsole.

Laden Sie die Zip-Datei hoch

Registrieren Sie Umgebungsvariablen

Es ist in Ordnung, wenn Sie den Zeitpunkt der regulären Ausführung registrieren können!

Referenz

Impressionen ・ Zukunft ...

・ Ich möchte es in andere Flows integrieren.

Recommended Posts

Poste regelmäßig mit AWS Lambda auf Twitter!
Mit Python auf Twitter posten
[Lambda] [Python] Von Lambda auf Twitter posten!
Ich habe versucht, schlechte Tweets regelmäßig mit der AWS Lambda + Twitter API zu löschen
So konfigurieren Sie Layer auf Lambda mit AWS SAM
Ich habe versucht, mit AWS Lambda einen AMI zu erhalten
Posten Sie mit der API auf Twitter in Ihrem Konto
Web Scraping mit AWS Lambda
Veröffentlichen Sie regelmäßig Bilder von Papillon auf Python + AWS Lambda + Slack
Zusammenfassung bei Verwendung von AWS Lambda (Python)
Tweet WakaTime Zusammenfassung mit AWS Lambda
Mit Python 3 einfach auf Twitter posten
[AWS] Verwenden von INI-Dateien mit Lambda [Python]
Stellen Sie mit AWS Lambda Python eine Verbindung zu s3 her
Zusammenfassung des Schreibens von AWS Lambda
[Einführung in AWS] Das erste Lambda ist Transcribe ♪
Sie können Python mithilfe der Bibliothek in eine AWS Lambda-Funktion verwandeln
Poste den hochfliegenden Titel von Youtube mit python3 auf Twitter
[AWS / Lambda] Laden einer externen Python-Bibliothek
Zusammenfassung des Studiums von Python zur Verwendung von AWS Lambda
Ich habe versucht, eine Umgebung zu erstellen, um regelmäßig mit Selenium mit AWS Fargate zu überprüfen
Ich habe versucht, Twitter Scraper mit AWS Lambda zu verwenden, aber es hat nicht funktioniert.
Hinweis zur Verarbeitung von POST-Daten durch Herstellen einer Verbindung zu Lambda über das AWS API Gateway (HTTP API)
Eine kleine Geschichte, die beim Schreiben von Twilio-Anwendungen mit Python auf AWS Lambda süchtig macht
Terraform konfiguriert, um AWS Lambda von Amazon SQS aus zu starten
Überprüfen Sie types_map, wenn Sie Mimetypen mit AWS Lambda (Python) verwenden.
Amazon SNS → AWS Lambda → Slack → Führen Sie AWS-Befehle in AWS Chatbot aus
Versuchen Sie, Tweets mithilfe der Twitter-API in großen Mengen zu löschen
Ich möchte Lambda mit Python auf Mac AWS!
Tweet von AWS Lambda
Suchen Sie Twitter mit Python
Beispiel für die Verwendung von Lambda
Ich habe ein Skript geschrieben, um mit AWS Lambda + Python 2.7 schnell eine Entwicklungsumgebung für Twitter Bot zu erstellen
Probieren Sie AWS Lambda Destinations aus
[LINE Notify API, AWS] Senden Sie regelmäßig summende Tweets an die Gruppe LINE
[AWS] Versuchen Sie, die Python-Bibliothek mit SAM + Lambda (Python) zur Ebene hinzuzufügen.
Suchtpunkte beim Herunterladen von Dateien mit boto auf AWS Lambda
Ausgabe von CloudWatch-Protokollen an S3 mit AWS Lambda (Pythyon ver)
Erstellen Sie mit AWS SAM schnell eine API mit Python, Lambda und API Gateway
[Python] Exportieren Sie regelmäßig mit Lambda aus CloudWatch-Protokollen nach S3
Stellen Sie externe Module (numpy, scipy, Anfragen usw.) für AWS Lambda bereit
AWS Lambda Layers Eine kurze Erklärung von der Erstellung bis zur Verknüpfung
[Python] Ermöglicht den Import von pip3-Paketen in AWS Lambda
Senden Sie eine Anfrage von AWS Lambda an Amazon Elasticsearch Service