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分ごとに毎回実行されることを確認できました。
コメント