簡體   English   中英

通過APSCHEDULER在每次1分鍾和31分鍾時在python中安排cron作業以運行python腳本

[英]Scheduling a cron job in python to run a python script every time at 1 and 31 minutes through APSCHEDULER

我必須每 1 分鍾和 31 分鍾運行一次 AP 調度程序 cron 作業。 例如,如果它在 10.01 運行並且應該在 10.32 再次運行,那么它應該在 11.03 和 11.34 再次運行,並且除了周六和周日之外的所有日子都應該重復。 我試過這個,但它不起作用

我該怎么做

sched.jobs(jobs,'cron',day_of_week='mon-fri', hour=*, minute=*\31*)

以上不是有效的 Python,可能無法運行。

  • *不帶引號被解釋為乘法運算符,但它位於非法位置。
  • 此外,cron 表達式*/31 * * * Mon-Fri表示在可被 31 整除的分鍾內運行。您想要的 cron 表達式是1,31 * * * 1-5
  • 我不相信有jobs職能。

首先,您需要定義一個要調用的函數(我不確定表達式中的jobs是單個函數還是函數集合,但它應該只是一個函數):

def job():
    print("job starting")
    call(['touch', 'emptyfile'])

然后,使用add_job (不是jobs )添加它

// create scheduler using a subclass of BaseScheduler
scheduler = BackgroundScheduler()
scheduler.configure(timezone='utc')

// cron would look like 1,31 * * * 1-5
scheduler.add_job(job, 'cron', day_of_week='1-5', hour='*', minute='1,31')
scheduler.start()

可以參考https://crontab.guru/https://apscheduler.readthedocs.io/en/stable/userguide.html

暫無
暫無

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

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