簡體   English   中英

如何使用每5秒運行一次的Python Win32com創建計划任務?

[英]How do I create a scheduled task using Python Win32com that runs every 5 seconds?

我正在嘗試使用Win32com在Python中創建計划任務。 我能夠創建每日觸發器。 但是,我無法找到一種方法來每5秒或每分鍾創建一次觸發器。 有人對如何做到這一點有任何指示嗎?

如評論中所述,如果您想以這種頻率執行操作,最好讓程序永久運行並執行自己的調度。

以與@Barmak Shemirani的回答類似的方式,但沒有產生線程:

import time

def screenshot():
    # do your screenshot...

interval = 5.
target_time = time.monotonic() + interval
while True:
    screenshot()
    delay = target_time - time.monotonic()
    if delay > 0.:
        time.sleep(delay)
    target_time += interval

或者,如果您的屏幕截圖足夠快並且您實際上並不在乎精確的時間:

while True:
    screenshot()
    time.sleep(interval)

如果要從系統啟動時開始運行,則必須使其成為service ,並相應地更改退出條件。

pywin32不需要創建時間表或計時器。 使用以下內容:

import threading

def screenshot():
    #pywin32 code here
    print ("Test")

def starttimer():
  threading.Timer(1.0, starttimer).start()
  screenshot()

starttimer()

使用pywin32截取屏幕截圖等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM