windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

Windows、Mac共に仕事やプライベートで利用しているが、会社関係の経理、総務の事務作業はWindowsを利用している。
日頃のルーチンワークなどをタスク管理ツールを使って自動化している。

WEBサイトを運用している方はlinuxサーバーではcronでアクセスの少ない時間(たいてい夜中や朝方)にバックアップととるスクリプトを実行させているかと思う。

今回は、以前の投資関係の記事

【下調べ編】投資歴は16年以上になりますが長らく遠ざかっていたFX取引を再開しようと「MT4」で自動売買を始めてみる事にした

で少しふれた、VPSサーバーのリモートデスクトップ(Windows)を利用して、pythonプログラムを決まった時間で動かす設定を行う備忘録。

MT4を運用する為に、契約したVPSサーバー。契約してみたものの未だMT4での自動売買は勉強中で活用できていない。折角24時間稼働しているサーバーをそのままにしておくのも勿体ないので、SNSのボットを動かすのに使ってみる。



ここで使うpythonプログラムは、tweepyモジュールを利用して決まった文言をツイートするプログラム。APIを利用して作成するが、プログラム作成方法はまた別の機会に…。

ウェブサーバーのように24時間稼働しているサーバー、一般的にはLinuxサーバーが多いと思うが今回はWindows10なので、Windowsのタスク管理ツールタスクスケジューラでの設定となる。GUIでの作業なので設定自体は分かり易いはず…。

タスクスケジューラの登録方法

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

「タスクスケジューラ」と検索して、時計マークのアイコンのタスクスケジューラを起動させる。
基本タスクの作成をクリックして、

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

適当な名前と説明を入力する。
ここでは、名前「twitter_bot」、説明「1日1回決まった時間にツイートする。」とする。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

次へをクリックし、トリガー設定へ。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

ここでは、「毎日」にチェック。そして次へ。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

開始欄の日時は、基本タスク設定時の日時になるので、時刻をキリの良い時間に設定しておく(※気にしない方はそのままでよい)。ここでは16:30:00とする。
そして、次へをクリック。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

操作はプログラムの開始にチェック。そして次へ。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

プログラムの開始の設定で、実行したいファイルを指定する。

プログラム/スクリプトは、今回実行したいのはpythonファイルなので、python.exeの格納場所を入力

C:\Users\(ユーザー名)\AppData\Local\Programs\Python\Python36\python.exe

引数の追加は、実行したいファイル名。

tweet_auto.py

開始は、実行したいファイルが入っているディレクトリ(tweet_auto.pyの格納先)。実行ファイルのカレントディレクトリを指定。

C:\Users\(ユーザー名)\Desktop\twitter_bot

と入力し、次へ。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

要約を確認する。

この設定だと、毎日16:30に設定したpythonファイルが実行される。

[完了]をクリックしたときに、このタスクの[プロパティ]ダイアログを開くにチェックを入れ完了をクリック。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

すると、プロパティダイアログが開き、「トリガー」タブをクリック。

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

編集をクリックし、

windows10タスクスケジューラでジョブを管理する【設定方法の備忘録】pythonファイルを定期実行する

上記のように設定すると、

当日の16:30から1時間おきに実行するように設定することも可能。

今回は、WEBサーバーと同じように24時間稼働しているサーバー上で運用するが、トリガー設定で「コンピューター起動時」「ログオン時」などの設定もできる。アプリを自動で起動させたいとかある場合は使うかもしれないが、まぁ毎日、毎週など定期的に事項するのが一般的。
自動でアプリを起動させる場合は、デスクトップにとりあえず起動させたいアプリ・ソフトを複数登録したバッチファイルを置いておくだけで事足りると思うけど…。

そんな感じで、タスクスケジューラの基本的な設定方法の備忘録終わり。

関連記事Related article

記事月別アーカイブ