APScheduler:
APScheduler 四个组件分别为:
- 调度器(scheduler)、触发器(trigger),作业存储(job store),执行器(executor)
安装命令:
pip install setuptools
pip install --ignore-installed apscheduler
1 新建调度器schedulers
BlockingScheduler : 调度器在当前进程的主线程中运行,也就是会阻塞当前线程
BackgroundScheduler : 调度器在后台线程中运行,不会阻塞当前线程
import datetime as dt
from apscheduler.schedulers.blocking import BlockingScheduler
scheduler = BlockingScheduler()
2 添加调度任务trigger
① date 触发器:(指定时间点触发),参数如下:
- run_date(datetime或str):任务运行的日期或时间
- timezone(datetime.tzinfo或str):指定时区
# 例1:在 2020-9-24 时刻运行一次 func 方法
scheduler.add_job(func, 'date', run_date = dt.date(2020, 9, 24))
# 例2: 在 2020-9-24 15:10:00 时刻运行一次 func 方法
scheduler.add_job(func, 'date', run_date = dt.datetime(2020, 9, 24, 15, 10, 0))
# 例3: 在 2020-9-24 15:11:00 时刻运行一次 func 方法
scheduler.add_job(func, 'date', run_date = '2020-9-24 15:11:00')
② interval 触发器: (固定时间间隔触发),参数如下:
- weeks(int):间隔几周
- days(int):间隔几天
- hours(int):间隔几小时
- minutes(int):间隔几分钟
- seconds(int):间隔几秒钟
- start_date(datetime或str):开始时间
- end_date(datetime或str):结束时间
- timezone(datetime.tzinfo或str):时区
# 例1:每隔两分钟执行一次 func 方法
scheduler.add_job(func, 'interval', minutes = 2)
# 例2:在 2020-9-24 15:15:0

APSchedulera是一个强大的任务调度库,包含调度器、触发器、作业存储和执行器四大组件。调度器有BlockingScheduler和BackgroundScheduler两种,分别在主线程和后台线程运行。触发器包括date、interval和cron三种类型,用于控制任务执行的时间。date触发器用于一次性执行,interval按固定间隔执行,cron则按照cron表达式周期性执行。文章还介绍了如何添加、移除、修改和管理调度任务,以及使用不同类型的executor进行多线程执行。
最低0.47元/天 解锁文章
163

被折叠的 条评论
为什么被折叠?



