GANMAの連載漫画「木曜日は君と泣きたい。」が投稿される度にお知らせをしてくれるPythonスクリプトを作った。
工藤マコト先生の描く「木曜日は君と泣きたい。」を毎回Twitter巡回で見つけるのが面倒なので、自動的にお知らせするようにしてみた。(2019年6月10日時点バージョン)
必要なもの
- Tweepy(Pipでインストール)
- mpg123(Homeberw、apt-getでインストール)
- TwitterのAPIに必要な情報
上記のインストールは他のウェブサイトの説明が優秀なので割愛。
当のコード
import os
import tweepy
os.chdir(os.path.dirname(__file__))
# 認証キーの設定 https://masatoshihanai.com/php-twitter-bot-01/ を見ながら取得してください
consumer_key = "自分のconsumer_key"
consumer_secret = "自分のcustomer_secret"
access_token = "自分のaccess_token"
access_token_secret = "自分のaccess_tocken_secret"
# OAuth認証
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
# APIのインスタンスを生成
api = tweepy.API(auth)
#screen_nameには、工藤マコト先生のアカウント名(@抜き)を指定
status_list = api.user_timeline(screen_name="m0721804")
#データベースを使うほどの規模のものではないので、.txtを代わりに使用
with open("database.txt") as f:
database_number = f.readline().strip()
# database.txtの数値は最新の話数にしておいてください。
for i, status in enumerate(status_list):
with open("database_nakitai.txt") as f:
latest_number = f.readline().strip()
# print(last_number)
# last_number = "24"
if "「木曜日は君と泣きたい。」" + database_number + "話" in status.text:
print("新規掲載!")
# FF IVの「勝利のファンファーレ(fanfare.mp3)」が流れるようにしているが、
# 任意で好きなmp3ファイルにしてください。
os.system("mpg123 -C fanfare.mp3")
latest_number = int(database_number) + 1
with open("database_nakitai.txt", "w") as g:
g.write(str(latest_number))
break
if database_number == str(latest_number):
print("木曜日は君と泣きたい。" + str(latest_number) + "話は既読です。")
break
現時点の最新話は24話なので、database.txt は24としておく。
database.txt
24
実行
ターミナル
python main.py
これで、cronか何かで自動実行するようにすれば、「木曜日は君と泣きたい。」がアップロードされる度に音でお知らせしてくれる。便利!!