scheduleモジュールを使用しPythonスクリプトを指定の分(時間)ごとに毎回実行する

scheduleモジュールを使用しPythonスクリプトを指定の分(時間)ごとに毎回実行してみます。

今回はscheduleモジュール・ライブラリを使用します。scheduleモジュールは標準ライブラリではありませんので、事前にインストールしておく必要があります。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■Pythonスクリプトを指定の分(時間)ごとに毎回実行する

では、早速Pythonスクリプトを指定の分(時間)ごとに毎回実行するためのコードを書いていきます。

■コード

import schedule
import time

def func():
	print("こんにちは、世界")

schedule.every(1).minutes.do(func)

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

Pythonスクリプトを指定の分(時間)ごとに毎回実行するために、今回はscheduleとtimeモジュールをimportで呼び出します。

その後、funcという関数を定義します。関数の括弧内には、引数,パラメータを設定しません。

関数を呼び出した時に実行される処理は、print()関数で文字列を出力させるというものです。

関数を定義した後に、schedule.every().minutes.do()を使用し、everyの括弧内に、引数,パラメータとして指定の分(時間)を渡します。今回は「1」とします。そしてdoの括弧内に引数,パラメータとして呼び出す関数を渡します。これで1分ごとに定義した関数が呼び出されます。

その後、while文を使用し、条件を満たす(True)場合に、指定の処理を繰り返します。指定の処理は、schedule.run_pending()を使用し、scheduleに実行する保留中の関数があるかどうかを確認。確認後、time.sleep()関数を使用し、括弧内に引数,パラメータとして秒数を渡します。今回は「1」とし、1秒間処理を一時停止します。

これで、Pythonスクリプトを指定の分(時間)ごとに毎回実行することができます。

■実行

このスクリプトを「p_scheduler.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、Pythonスクリプトが今回指定した1分ごとに毎回実行されることを確認できました。

コメント

タイトルとURLをコピーしました