schedule:python中的cron工具,定时完成任务

Schedule 是使用 Python 开发的一个定时任务触发器,可以使用易读的方式执行定时的任务。

安装方式

  • 可以使用 pip install schedule 从配置的源镜像中(一般情况下是 Pypi)下载并且使用该模块
  • 可以从 这里 找到源码作为本地包使用

使用方式

  • Schedule 模块将函数作为 Job 任务,利用轮询的方式进行函数的定时执行
  • Job 任务的执行流程由 Scheduler 进行规划并且执行
  • 当函数封装为 Job 任务时可以采用其 do 方法将 Job 任务加入Scheduler 并进行轮询定时任务

使用示例

import time
import schedule


def job():
  print("I'm working...")

  
schedule.every(10).seconds.do(job)
schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
schedule.every(5).to(10).minutes.do(job)
schedule.every().monday.do(job)
schedule.every().wednesday.at("13:15").do(job)
schedule.every().day.at("12:42", "Europe/Amsterdam").do(job)
schedule.every().minute.at(":17").do(job)


def job_with_argument(name):
  print(f"I am {name}")


schedule.every(10).seconds.do(job_with_argument, name="Peter")


while True:
  schedule.run_pending()
  time.sleep(1)

注意事项

  • 使用时需要注意加入任务使用的是串行的方式,任务的执行会阻塞后续任务的执行
  • 定时任务的执行由于阻塞导致并非准时执行,需要特别注意
  • 采用多线程或多进程时需要注意变量的一致性,代码实现中关于锁并没有实现
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Crayon112

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

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

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

打赏作者

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

抵扣说明:

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

余额充值