ProcessTimer

概要

プログラム(関数)を,指定した時刻(HH:MM:SS)に実行する.

引数

  1. 実行時刻の文字列(HH:MM:SS表記,str型)
  2. 関数(引数なし,つまり,def FunctionName()の形式)

戻り値

なし

コード

import datetime
import time

#201203:プログラム(関数)を,指定した時刻に実行する.
def ProcessTimer(HHMMSS_Sta,TestJob):
    time_Sta = datetime.datetime.strptime(HHMMSS_Sta, "%H:%M:%S")
    time_Now=datetime.datetime.now()

    #print('time_Sta=',time_Sta,'time_Now=',time_Now)
    delta_time=time_Sta-time_Now
    print(delta_time)
    delta_time=int(delta_time.seconds)
    print('プログラム待機中.本プログラムが呼び出されてから',delta_time,'秒後に実行するよ')

    time.sleep(delta_time)
    print('プログラム実行!')
    TestJob()

タスクスケジューラ(またはcron)でpythonを呼び出したとき,自動売買のためのメイン関数(引数なし)を所望の時刻に起動するための関数が欲しくて作成した.基本的には,pythonコードを呼び出した時刻と,メイン関数を実行するまでの時刻のインターバル時間分だけ待機する,という考え方で書いている.

コメント

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