前提・実現したいこと
1.whileループの終了条件は処理を始めてから3時間後に終了する。
そのため監視する時間も3時間(10800秒)にしている
2 whileループしながらの監視ともあって多少の負荷を考慮し1分に1回のスキャン頻度にしている
3 画像を検知したらSikulixごと落としてプログラムを終了させる
該当のソースコード
import sys reload(sys) sys.setdefaultencoding('utf-8') Settings.ObserveScanRate = 0.016 #1分に1回スキャンする設定 reg = (Region(1020,0,900,1080)) reg.onAppear("1597108433229.png",test)#対象の画像が出たら 関数testを実行する reg.observeInBackground(10800) #他の処理をさせつつバックグラウンドで3時間監視 cnt = 0 def test(event): print(u"発見した") sys.exit() while True: wait(1) print(cnt) cnt +=1
試したこと
上記のは確認のためにつくりました
この場合、対象の画像をregion範囲内にすでに出しておき
1秒づつカウントしていくことで1分後のスキャンに画像を検知しプログラムが終わると思っていたんですけど
終わらずにカウントしつづけていきました・・・
補足情報(FW/ツールのバージョンなど)
SikulixIDE-2.0.4
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/11 07:51 編集
2020/08/11 08:35
2020/08/11 08:41
2020/08/12 01:14 編集
2020/08/12 01:16
2020/08/12 08:52