python 定时任务

目录

一、周期任务:每隔一段时间执行一次

二、定时任务:固定日期时间执行


pip install APScheduler
BlockingScheduler:当调度器是程序中唯一运行的东西时使用,阻塞式。
BackgroundScheduler:当调度器需要后台运行时使用。
AsyncIOScheduler:当程序使用 asyncio 框架时使用。
GeventScheduler:当程序使用 gevent 框架时使用。
TornadoScheduler:当构建 Tornado 程序时使用
TwistedScheduler:当构建 Twisted 程序时使用
QtScheduler:当构建 Qt 程序时使用

MemoryJobStore:使用内存存储
MongoDBJobStore:使用 MongoDB 存储
RedisJobStore:使用 redis 存储
RethinkDBJobStore:使用 rethinkdb 存储
SQLAlchemyJobStore:使用 ORM 框架 SQLAlchemy,后端可以是 sqlite、mysql、PoatgreSQL 等数据库
ZooKeeperJobStore:使用 zookeeper 存储


date:在某个特定时间仅运行一次 job 时使用
interval:当以固定的时间间隔运行 job 时使用
cron:当在特定时间定期运行 job 时使用

 

一、周期任务:每隔一段时间执行一次

from datetime import datetime
from apscheduler.schedulers.blocking import BlockingScheduler

if __name__ == '__main__':
    """
    周期性任务:每1秒执行一次(BlockingScheduler阻塞式)
    """
    scheduler = BlockingScheduler()
    scheduler.add_job(lambda: print(datetime.now()), 'interval', seconds=1)
    scheduler.start()

二、定时任务:固定日期时间执行

from datetime import datetime
from apscheduler.schedulers.blocking import BlockingScheduler

if __name__ == '__main__':
    """
    定时任务:每天的早上10:07执行任务(BlockingScheduler阻塞式)
    <p>
    主要参数:
    year:年
    month:月
    day:日
    week:周,一年中的第多少周,1-53
    day_of_week:星期,0-6 或者 mon,tue,wed,thu,fri,sat,sun
    hour:时
    minute:分
    second:秒
    start_date:开始时间
    end_date:结束时间
    </p>
    """
    scheduler = BlockingScheduler()
    scheduler.add_job(lambda: print(datetime.now()), 'cron', hour=10, minute=7, second=0)
    scheduler.start()

参考文档:Python 定时任务框架 APScheduler 详解 - leffss - 博客园

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文子阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值