在APScheduler中添加作业时出现问题(Python 3.6)

时间:2018-06-06 05:54:27

标签: python-3.6 apscheduler

我正在尝试使用APScheduler每周一次安排我的python脚本(merchant.py)

为此,我安装了软件包,当我使用cronjob选项运行以下示例代码时 -

from datetime import datetime
import time
import os
from apscheduler.schedulers.background import BackgroundScheduler
def tick():
print('Tick! The time is: %s' % datetime.now())

if __name__ == '__main__':
    scheduler = BackgroundScheduler()
    scheduler.add_job(tick, 'cron', day_of_week = 'mon', hour = 11)
    scheduler.start()
    print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))
    try:
        while True:
            time.sleep(2)
    except (KeyboardInterrupt, SystemExit):
        scheduler.shutdown()

我收到以下错误 -

KeyError:' cron'

LookupError:名称没有触发" cron"被发现

请你纠正我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方案,以便与他人分享 -

from apscheduler.schedulers.blocking import BlockingScheduler
from apscheduler.triggers.combining import OrTrigger
from apscheduler.triggers.cron import CronTrigger
import time

sched = BlockingScheduler()

trigger = OrTrigger([
   CronTrigger(day_of_week='thu', hour='07', minute='28')
])
sched.add_job(YOUR_JOB, trigger)
sched.start()
try:
    while True:
    time.sleep(2)
except (KeyboardInterrupt, SystemExit):
    sched.shutdown()