[英]python apscheduler not execute by cron for every 1 minute
I am using apscheduler to make a cron job, now I want to make the work execute every 1 minute.我正在使用 apscheduler 进行 cron 作业,现在我想让工作每 1 分钟执行一次。 This is my code:这是我的代码:
# -*- coding: utf-8 -*-
import time
from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.triggers.interval import IntervalTrigger
if __name__ == '__main__':
scheduler = BackgroundScheduler()
scheduler.start()
try:
while True:
time.sleep(2)
except (KeyboardInterrupt, SystemExit):
scheduler.shutdown()
@scheduler.scheduled_job(IntervalTrigger(seconds=60))
def func_to_be_executed():
print("I am running......")
But the job only execute once, what should I to to make it execute every minute using cron way?但是作业只执行一次,我应该如何使用 cron 方式让它每分钟执行一次?
Try using the decorator approach.尝试使用装饰器方法。 It should work.它应该工作。
from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.triggers.interval import IntervalTrigger
scheduler = BackgroundScheduler()
scheduler.start()
@scheduler.scheduled_job(IntervalTrigger(seconds=60))
def func_to_be_executed():
pass
Code for BlockingSchedular - use when the scheduler is the only thing running in your process BlockingSchedular 的代码 - 当调度程序是你的进程中唯一运行的东西时使用
from apscheduler.schedulers.blocking import BlockingScheduler
from apscheduler.triggers.interval import IntervalTrigger
sched = BlockingScheduler()
@sched.scheduled_job(IntervalTrigger(seconds=10))
def timed_job():
print('This job is run every 10 seconds.')
sched.start()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.