Pythonスクリプトを日時を指定して自動実行する方法 (windows10)

全体のフロー

Pythonスクリプト → EXE化 → タスクスケジューラで実行予約

EXE化とは、.exeの拡張子で表されるWindows環境におけるファイル形式に変換する事です。実行形式のファイルであることから、スクリプトをテストした開発環境のまま実行する事ができます。経験上、最もエラーの出ない方法ですので、初心者の方にはこの方法をオススメします!

Pythonスクリプト

Pycharmを使って、実行するPythonスクリプトを書きました。このスクリプトをEXE化して、自動実行していきます。

import datetime

dt_today = str(datetime.date.today())
txt_name = dt_today + ".txt"

f = open(txt_name, 'w')
f.write("本日は、" + dt_today)
f.close()

Pythonスクリプト → EXE

次に、PycharmのTerminalで.exeを生成していきましょう。

pyinstallerのインストール

Terminalでpyinstallerをインストールしましょう。

.exeの生成

.pyがあるファイルを指定し、「pyinstaller ~~.py –onefile」で.exeを生成します。指定ファイルに/distというファイルが作られ、その中に.exeが生成されます。

タスクスケジューラで.exeの実行予約

Windowsアプリケーションの「タスクスケジューラ」を起動させましょう。

上部タブの「操作」→「基本タスクの生成」で基本タスク生成ウィザードを表示します。

名前の項目には、実行の名前を書き入れます。なんでもいいです。

タスクのスケジュールなどを記入後に、.exeファイルを記入します。

タスクスケジューラの設定

ここまでの操作では、タスクスケジューラは実行されません。。。詳細な設定をしてみましょう。

画面左カラムの「タスクスケジューラ ライブラリ」を開きます。設定したいタスクをダブルクリックし、プロパティを開きます。

詳細設定の例

大事そうな設定に赤をいれました。参考にどうぞ!

コメント

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