PythonでTwitterAPIを使ってツイートする

Requests、requests-oauthlibを使ってツイートします。twitterというモジュールがある事に後から気づきました。ドキュメントちょっと見た感じでは、使いやすそうな印象を感じました。

参考URL: requests-oauthlib , twitter



事前準備

Pythonモジュールをインストール

Twitter APIへツイート内容をHTTPRequestを送信するためのモジュール、Twitter APIを利用するための認証情報を保存するyamlファイルを扱うモジュールをインストールします。

pip install requests requests_oauthlib pyyaml


Twitter DevelopersからAPIKEYとACCESSTOKENを発行する

Twitter APIを利用するために、Twitter Developersへ登録しAPIKEYとACCESSTOKENを発行します。

Twitter Developers URL


アクセス情報をyamlファイルに保存する

Twitter APIを利用するための、APIKEY、ACCESS TOKENをyamlファイルに保存します。プログラムからこのファイルを読み込んで利用します。

API_KEY: "XXXXXXXXXXXXXXXXXXX"
API_SECRET_KEY: "XXXXXXXXXXXXXXXXXXX"
ACCESS_TOKEN: "XXXXXXXXXXXXXXXXXXX"
ACCESS_TOKEN_SECRET: "XXXXXXXXXXXXXXXXXXX"



サンプルプログラム

※yamlファイルのパスは環境に併せて修正してください


実行コマンド

プログラムを実行してツイートします。

python post_tweet.py

実行結果

https://twitter.com/fukahirer/status/1238738470639525888


正常系

Success.

異常系

Failed.
 - Responce Status Code : 401
 - Error Code : 89
 - Error Message : Invalid or expired token.


おまけ

PythonでTwitterAPIを使ってリプライする

パラメータにリプライするツイートのIDを”in_reply_to_status_id”キーで追加することでリツイートができます。

他のパラメータもあるので、詳細は公式ドキュメントを参照ください。

公式ドキュメントURL

サンプルプログラム

実行結果

https://twitter.com/khidnet/status/1238747528285188096