python-3.6 - 如何使用 apscheduler 在特定时间之间每分钟触发一次作业?

标签 python-3.6 apscheduler

我正在使用 python apscheduler 模块。是否可以在每天早上 7:30 到晚上 11:30 之间每分钟触发一次作业?

我尝试了以下解决方案,但我不知道如何添加分钟限制。

from apscheduler.schedulers.background import BackgroundScheduler


def job_function():
    print("Hello World")

sched = BackgroundScheduler()

sched.add_job(job_function, 'cron', hour='7-23', minute='*')

sched.start()

最佳答案

您可以使用新的 OrTrigger 组合多个 CronTrigger 以覆盖整个时间跨度:

from apscheduler.triggers.combining import OrTrigger
from apscheduler.triggers.cron import CronTrigger

trigger = OrTrigger([
   CronTrigger(hour='7', minute='30-59'),
   CronTrigger(hour='8-22', minute='*'),
   CronTrigger(hour='23', minute='0-30')
])

sched.add_job(job_function, trigger)

关于python-3.6 - 如何使用 apscheduler 在特定时间之间每分钟触发一次作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48224631/

相关文章:

python - 如何注释 f(*params)?

python - Monty Hall 模拟未按预期工作

Python 3 子进程 SIGABRT

python - 预期出现缩进 block python 错误

python - 在 apscheduler 中维护作业历史记录

python - Windows 10在启动时运行python程序

python - APScheduler 选项

python - 过滤包含非 ascii 值的 Pandas 数据框行

python - 如何为 APScheduler 3.0 传递 UTC 时区?

python - 将 mysql jobstore 与 Flask Sqlalchemy 一起使用时如何处理数据库断开连接