Pythonをwindowsタスクスケジューラで定期実行させる
はじめに
作成したPythonのツールを自動で実行させたい場合、OSがWindowsだと、タスクスケジューラを使って実行させることができます。
今回は、タスクスケジューラへの設定法についてまとめていきます。
Mac、Linuxの場合、cronを使うことができます。cronを使って定期実行をさせる方法については、下記の記事にまとめています。
タスクスケジューラとは?
Windows OS には、「タスクスケジューラ」機能が標準で装備されています。
動作確認環境
・Windows10
・Jupter Notebook 6.2.0
設定方法
Pythonスクリプトを実行させるために
タスクスケジューラを使ってPythonを実行するために、事前に確認しておくことは下記の2つです。
Pythonの実行ファイルの存在するパス名
実行させたいPythonスクリプトの存在するフォルダ名、ファイル名
Pythonの実行ファイルの存在するパスを確認する
環境変数に設定されているpathの中に、Pythonの実行ファイルが存在する場所を確認します。
「スタート」メニューの「Windowsシステムツール」から、「コントロールパネル」を選択します。
「コントロールパネル」画面より、「システムとセキュリティ」を選択します。
「システムとセキュリティ」画面にて、「システム」を選択します。
「詳細情報」にて、「システムの詳細設定」を選択します。
「システムのプロパティ」画面の「詳細設定」タブで、「環境変数」を選択します。
「環境変数」画面の①「Path」を選択し、②「編集」を選択します。
この画面で、anacondaがインストールされているパスをコピーしておきます。
この環境の場合、赤枠の「c:\Users\xxxx\anaconda3」となります。
タスクスケジューラの設定方法
次に、タスクスケジューラを起動して、設定していきます。
「スタート」メニューの「Windows管理ツール」から、「タスクスケジューラ」を選択します。
「タスクスケジューラ」画面のメニューより、①「操作」を選択し、②「基本タスクの作成」を選択します。
「基本タスクの作成」ウィザード画面が表示されます。
「基本タスクの作成」画面で、
①「名前」:実行する処理の名前を設定
②「説明:実行する処理の説明を設定
します。
入力が完了したら、③「次へ」を選択します。
「トリガー」画面では、このタスクがどんな頻度で実行されるのかを選択することができます。今回は、「毎日」実行させるため、①「毎日」を選択します。頻度の選択が完了したら、②「次へ」を選択します。
「毎日」画面では、下記の2つを設定します。
タスクを起動する①開始日付、②実行する時間
③間隔
設定が完了したら、④「次へ」を選択します。
「操作」画面では、①「プログラムの開始」を選択して、②「次へ」を選択します。
「プログラムの開始」画面では、下記の3つを設定します。
プログラム/スクリプト:Pythonの実行ファイルをフルパスを設定
引数の追加:Pythonスクリプトのファイル名を設定
開始:実行させたいPythonスクリプトの存在するフォルダ名を設定
設定完了したら、④「次へ」を選択します。
「要約」画面で、ここまで設定した内容を確認します。
設定した内容が問題なければ、「完了」を選択し、設定完了です!
まとめ
今回は、windows10のタスクスケジューラを使用して、Pythonのスクリプトを定期実行するための設定方法についてまとめました。
なお、タスクスケジューラの実行条件は、作成時と同じユーザーアカウントでWindows 10にサインインをしているときのみ起動となるので、複数ユーザーで使用している場合には、注意が必要です。