HACK SCORE

# 現役エンジニアの出力コンソール

【Python】scheduleライブラリで定期実行を実装してみよう

通常スクリプトは、最後の処理を実行したら終了してしまいますが

今回は1時間おき、または指定した時刻に定期的に実行することができる便利なライブラリ「schedule」を紹介します

手順

1.必要なモジュールのインストール

2.定期実行処理を実装

1.必要なモジュールのインストール

今回はscheduleというモジュールを利用

$ pip install schedule

2.定期実行処理を実装

定期実行したい処理にスケジュールを割り当てます

下記、公式ドキュメントのサンプルコードを参照

import schedule
import time

def job():
    print("I'm working...")

# 10分ごとに実行
schedule.every(10).minutes.do(job)

# 1時間ごとに実行
schedule.every().hour.do(job)

# 毎日1030分に実行
schedule.every().day.at("10:30").do(job)

# 毎日月曜日に実行 
schedule.every().monday.do(job)

# 毎週水曜1315分に実行
schedule.every().wednesday.at("13:15").do(job)

# 毎時17分に実行
schedule.every().minute.at(":17").do(job)

while True:
    schedule.run_pending()
    time.sleep(1)

参考

所感

今回はscheduleというモジュールを使って簡易的に定期実行化しました。

他にもCircleCIやheroku,crontabなど定期実行する手段はいくつかあるので要件に適した方法を探してみてください

ご利用規約

当ブログの記事に関して、各サイトやAPI等のご利用規約に触れる恐れがありますので、ご利用は、全て自己責任でお願いします。

また、記事の内容を利用・参考にした上での活動について、いかなる理由があろうとも当ブログは一切責任を負いませんので、予めご了承ください。