python - 通过 APSCHEDULER 在 python 中安排一个 cron 作业以每次在 1 和 31 分钟运行一个 python 脚本
问题描述
我必须每 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
(not 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
推荐阅读
- google-sheets - 如果日期在多个范围之间,则条件格式
- python - 即使大写锁定打开,如何在 pyautogui 中获取小写字符?
- oracle - utl_lms.format_message | PL/SQL | URL 正确,但 href 中缺少点
- html - 具有百分比的弹性间隙和弹性环绕
- laravel - Laravel 帆 / 作曲家要求:chmod(目录属性)错误:不允许操作
- java - 根据条件显示不同的布局
- flutter - 错误:因为来自 sdk 的每个版本的 integration_test 都依赖于 vm_service 6.0.1-nullsafety.1 而 dwds ^7.1.0 依赖于 vm_service 5.5.0,
- pandas - 计算效率最高的 pandas 方法,可根据 1 列值和其他列值对行进行分组
- swift - 使用太多 IF 语句有问题吗?迅速
- python - s3 上的代码优化读取 csv 并摄取回 s3 存储桶