【Python】Twitterにメッセージをツイートする
機能
TwitterにメッセージをツイートするPythonプログラムです。
コマンドラインで指定したメッセージをTwitterにツイートします。
例えば、以下のコマンドを実行すると
python tweet.py テスト送信です。
以下のメッセージがTwitterに送られます。
サンプル動画
プログラム
#! python3 # 機能 # Twitterにメッセージをツイートする # 使い方 # import tweet_bot # tweet_bot.tweet("メッセージ") import os import json from twitter import Twitter, OAuth # 認証情報の取得 credential_path = os.path.join(os.path.dirname(__file__), "credential.json") with open(credential_path, "r", encoding="utf-8") as file: credential = json.load(file) api_key = credential["api_key"] api_key_secret = credential["api_key_secret"] access_token = credential["access_token"] access_token_secret = credential["access_token_secret"] # ツイートする def tweet(message): t = Twitter(auth=OAuth(access_token, access_token_secret, api_key, api_key_secret)) t.statuses.update(status=message)
#! python3 # 機能 # Twitterにメッセージをツイートする # 使い方 # 1.Pythonを実行する # 実行コマンド # python tweet.py メッセージ import sys import tweet_bot if len(sys.argv) < 2: sys.exit("使い方:python tweet.py メッセージ") tweet_bot.tweet(" ".join(sys.argv[1:]))
{ "api_key": "発行されたAPI Key", "api_key_secret": "発行されたAPI Key Secret", "access_token": "発行されたAccess Token", "access_token_secret": "発行されたAccess Token Secret" }
他のプログラムでも利用したいため、ツイート機能をモジュール化(tweet_bot.py)しています。
また、認証情報をネットに晒すリスクを減らすため、ファイルから認証情報を取得するようにしています。
使い方
- Pythonを実行する
実行コマンド
python tweet.py メッセージ
twitterをインストールしていない場合は以下のコマンドを実行して下さい。
pip install twitter
認証情報の取得方法は以下のサイトを参考にして下さい。
Python3でTwitterAPIを使い方をどのサイトにも負けないくらい丁寧に解説してみた Twitter Developerの開発者申請(例文あり)とAPIキー取得方法まとめ【2019年版】
実行時に「Read-only application cannot POST」というエラーになる場合があります。
その場合は以下を参考にアプリケーションの権限を変更して下さい。
【TwitterAPI】エラー「Read-only application cannot POST.」の対処法 – ysklog