通过APSCHEDULER在每天的上午10点安排python中的cron作业以运行python脚本

Scheduling a cron job in python to run a python script every day at 10 am through APSCHEDULER

我想在每天10点运行python的cron作业,该作业运行python脚本。 我正在使用apscheduler实现此功能。

我正在尝试使用apscheduler功能来安排每天在上午10点运行并执行python脚本的cron作业。 但是作业没有在定义的时间执行。

我已经使用apscheduler安排了一个间隔作业,每10分钟执行一次python脚本,并且脚本运行成功,但是cron作业正是我在努力的地方。

计划于今天下午2点运行的cron作业示例代码-

1
2
3
4
5
6
7
8
from apscheduler.schedulers.blocking import BlockingScheduler

def cron_process():
    print ("periodic print")

scheduler = BlockingScheduler()
scheduler.add_job(process, 'cron', day_of_week = 'sun', hour=14)
scheduler.start()

间隔作业的示例代码在启动执行后每10分钟成功运行一次-

1
2
3
4
5
6
def interval_process():
     print ("print every 10 minutes")

scheduler = BlockingScheduler()
scheduler.add_job(process, 'interval', minutes=10)
scheduler.start()

预期结果是cron作业在间隔时间的同一行上在定义的时间执行。

请告知我在哪里出错或代码中我还缺少什么。

谢谢。


您的代码经过稍微修改的版本正对我有用(我调整了cron条目,因此不必等一个星期即可看到结果,并且使函数名参数匹配):

1
2
3
4
5
6
7
8
9
#!/usr/bin/env python3
from apscheduler.schedulers.blocking import BlockingScheduler

def cron_process():
    print ('periodic print')

scheduler = BlockingScheduler()
scheduler.add_job(cron_process, 'cron', day_of_week = 'mon', hour='*', minute='*')
scheduler.start()