PythonスクリプトをWindowsのタスクスケジューラとバッチファイルを使用して自動実行する方法を解説します。
スクレイピングによる情報収集や定期的にスクリプトを実行したい場合は、この方法で自動で実行するように設定しておけば、毎回手動で実行する手間を省き実行忘れも防ぐことができます。
バッチファイルの準備
自動実行を行うスクリプトファイルのパスは「C:\test\test.py」とします。
バッチファイルの作成
まず、Pythonスクリプトを実行するためのバッチファイルを作成するために、テキストファイルを作成します。
作成したテキストファイルを選択して、名前の変更で拡張子を「.bat」に変更します。
※ファイルが使えなくなる可能性があります とメッセージが表示されますが、はい を選択して変更します。
バッチファイルにコマンドを入力
バッチファイルを選択して「右クリック」>「その他のオプションを表示」>「編集」の順に選択して、テキストエディタで開きます。
テキストエディタで、pythonを実行するためのコマンドを入力します。
※下図の1行目のディレクトリ変更指示は、バッチファイルとPythonスクリプトファイルが同一ディレクトリに保存されている場合は不要です。
日本語使用時の設定(文字化け対策)
バッチファイルの実行コマンドに日本語のファイル名や引数を指定する場合は、標準のままだと文字化けして正常に実行できません。日本語を使用する場合は、バッチファイルのエンコードをANSIに変更する必要があります。
エンコードを変更するには、バッチファイルの保存時に名前を付けて保存を選択し、ダイアログの下部にあるエンコードの選択メニューから「ANSI」を選択して保存します。
タスクスケジューラの設定
バッチファイルの準備が完了したら、タスクスケジューラを設定します。
Windowのスタートメニューを右クリックして「コンピューターの管理」を開きます。
コンピューターの管理画面の左サイドメニューから「タスクスケジューラ」を選択します。
右側のサイドメニューから「基本タスクの作成」を選択します。
基本タスクの作成ウィザードが開いたら、タスクの名前を入力して「次へ」を選択します。
タスクを開始するタイミングを設定します。
今回は毎日1回実行する設定を行います。
初回に開始する日付と、定期実行の時間を設定します。
プログラムの開始が選択されている事を確認して「次へ」を選択します。
実行するプログラムを選択します。
「参照」をクリックして、ファイル選択ダイアログを表示します。
準備したバッチファイルを選択して「開く」を選択します。
「次へ」を選択します。
「完了」を選択します。
タスクスケジューラライブラリを開き、作成したタスクが登録されていることを確認します。
手動で実行する場合は、タスクを右クリックして、メニューから「実行する」を選択します。
以上で設定は完了です。
Pythonスクリプトを自動実行する方法を解説しました。
Pythonをexe化して実行することも可能です。
詳しくは関連記事を参照してください。
・関連記事:【Python】PyInstallerでPythonスクリプトをexe化