广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中schedule模块定时任务怎么使用
  • 226
分享到

Python中schedule模块定时任务怎么使用

2023-06-30 17:06:29 226人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这篇“python中schedule模块定时任务怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中sche

这篇“python中schedule模块定时任务怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中schedule模块定时任务怎么使用”文章吧。

1 设置时间间隔随机数

在有一些场景下,为了模拟比较自然的情景,需要采用随机的时间间隔,这就派上用场了

如下代码,设置随机间隔从2秒到10秒之间取随机数

import scheduleimport timedef do_func(name,age):print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))+" in do func : 姓名:"+name+" 年龄:"+str(age))def main():# 定义定时任务时直接打标签schedule.every(2).to(10).seconds.do(do_func,"张三丰",100).tag("demo1","demo2")while True:schedule.run_pending()if __name__=="__main__":main()

执行结果如下,可以看出,确实在随机时间间隔

2022-05-25 01:02:45 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:02:50 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:02:53 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:02:59 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:01 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:05 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:08 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:13 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:17 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:03:22 in do func : 姓名:张三丰 年龄:100

2 设置定时任务执行到指定时间

如下均为指定到固定时间,这里因为是固定时间,就不再演示执行的结果了

import schedulefrom datetime import datetime, timedelta, timedef job():print('in job...')# 每小时执行一次,直到今天的 18:30为止schedule.every(1).hours.until("18:30").do(job)# 每小时执行一次,直到 2030-01-01 18:33为止schedule.every(1).hours.until("2030-01-01 18:33").do(job)# 在未来8小时内,每小时执行一次schedule.every(1).hours.until(timedelta(hours=8)).do(job)# 每小时执行一次,直到今天的 11:33:42schedule.every(1).hours.until(time(11, 33, 42)).do(job)# 每小时执行一次,直到 2030-01-01 18:33:20 为止schedule.every(1).hours.until(datetime(2030, 1, 1, 18, 33, 20)).do(job)

3 计算当前到下一次执行的时间差单位为秒

如下,设置每两个小时执行一次,如下可以计算出到下一次执行的时间为7200秒

结果如下:

import scheduleimport timedef do_func(name,age):print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))+" in do func : 姓名:"+name+" 年龄:"+str(age))def main():# 定义定时任务时直接打标签schedule.every(2).hours.do(do_func,"张三丰",100)t=schedule.idle_seconds()print(t)if __name__=="__main__":main()

7200.0

立刻执行所有的任务,不管他们是如何定时的

(1)首先看一下,不使用立刻执行所有的任务时:

代码如下:

import scheduleimport timedef do_func(name,age):print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))+" in do func : 姓名:"+name+" 年龄:"+str(age))def main():print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))schedule.every(3).seconds.do(do_func,"张三丰",100)while True:schedule.run_pending()if __name__=="__main__":main()

执行结果如下,即启动任务后,过一个时间间隔才执行

2022-05-25 01:43:04

2022-05-25 01:43:07 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:43:10 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:43:13 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:43:16 in do func : 姓名:张三丰 年龄:100

(2)设置立刻执行

代码如下,设置立刻执行

import scheduleimport timedef do_func(name,age):print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))+" in do func : 姓名:"+name+" 年龄:"+str(age))def main():print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))schedule.every(3).seconds.do(do_func,"张三丰",100)schedule.run_all()while True:schedule.run_pending()if __name__=="__main__":main()

可以看出,此时任务立刻执行,不会等3秒再执行,立刻执行之后再开始按照定时任务设置的规则去执行

2022-05-25 01:46:17

2022-05-25 01:46:17 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:46:20 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:46:23 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:46:26 in do func : 姓名:张三丰 年龄:100

(3)立刻执行可以设置延时,这里的延时是指延长这些时间之后,定时任务才生效

代码如下:

import scheduleimport timedef do_func(name,age):print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))+" in do func : 姓名:"+name+" 年龄:"+str(age))def main():print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))schedule.every(3).seconds.do(do_func,"张三丰",100)schedule.run_all(delay_seconds=10)while True:schedule.run_pending()if __name__=="__main__":main()

执行结果如下,可以看出,按照这种方式设置,也是立刻执行,只不过立刻执行之后,要过10秒之后定时任务才失效,这里需要特别注意,这里的延时不是说延长这么多时间才执行

2022-05-25 01:48:20

2022-05-25 01:48:20 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:48:30 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:48:33 in do func : 姓名:张三丰 年龄:100

2022-05-25 01:48:36 in do func : 姓名:张三丰 年龄:100

以上就是关于“Python中schedule模块定时任务怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网Python频道。

--结束END--

本文标题: Python中schedule模块定时任务怎么使用

本文链接: https://www.lsjlt.com/news/330496.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中schedule模块定时任务怎么使用
    这篇“Python中schedule模块定时任务怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中sche...
    99+
    2023-06-30
  • Python中schedule模块的定时任务如何使用
    这篇文章主要介绍“Python中schedule模块的定时任务如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中schedule模块的定时任务如何使用”文章能帮助大家解决问题。1 ...
    99+
    2023-06-30
  • Python中schedule模块定时任务的使用方法(2)
    目录1 设置时间间隔随机数2 设置定时任务执行到指定时间3 计算当前到下一次执行的时间差单位为秒上一篇文章Python中schedule模块关于定时任务使用方法 1 设置时间间隔随机...
    99+
    2022-11-11
  • Python中schedule模块关于定时任务使用方法
    目录1 取消定时任务2 定时任务只执行一次3 获取所有的定时任务4 取消所有任务5 给定时任务打标签,同样通过标签获取或取消定时任务1 取消定时任务 比如当满足一定条件时,就取消定时...
    99+
    2022-11-11
  • Python3.6 Schedule模块定时任务(实例讲解)
    一,编程环境 PyCharm2016,Anaconda3 Python3.6 需要安装schedule模块,该模块网址:https://pypi.python.org/pypi/schedule 打开Ana...
    99+
    2022-06-04
    实例 模块 Schedule
  • SpringBoot怎么使用Schedule实现定时任务
    本文小编为大家详细介绍“SpringBoot怎么使用Schedule实现定时任务”,内容详细,步骤清晰,细节处理妥当,希望这篇“SpringBoot怎么使用Schedule实现定时任务”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一...
    99+
    2023-07-05
  • python:定时任务模块schedul
    1.安装 pip install schedule 2.文档 https://schedule.readthedocs.io/en/stable/faq.html#how-to-execute-jobs-in-parallel 3...
    99+
    2023-01-30
    模块 python schedul
  • Python怎么用sched模块实现定时任务
    本文小编为大家详细介绍“Python怎么用sched模块实现定时任务”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么用sched模块实现定时任务”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。牛刀小...
    99+
    2023-07-05
  • Python周期任务神器之Schedule模块使用详解
    目录1.准备2.基本使用参数传递获取目前所有的作业取消所有作业标签功能设定作业截止时间立即运行所有作业,而不管其安排如何3.高级使用装饰器安排作业并行执行日志记录异常处理如果你想在L...
    99+
    2022-11-10
  • 太实用了!Schedule模块, Python 周期任务神器!
    如果你想在Linux服务器上周期性地执行某个 Python 脚本,最出名的选择应该是 Crontab 脚本,但是 Crontab 具有以下缺点:​​1.不方便执行秒级的任务。​​ ​​2.当需要执行的定时任务有上百个的时候,Crontab的...
    99+
    2023-05-14
    Python Schedule
  • python定时任务schedule库用法详细讲解
    目录前言1、按时间间隔执行定时任务2、装饰器:通过 @repeat() 装饰静态方法3、传递参数4、使用装饰器传递参数5、取消定时任务6、在指定时间执行一次任务7、根据标签检索任务8...
    99+
    2023-01-11
    python scheduler python定时任务 python定时任务schedule库
  • Node.js定时任务之node-schedule使用详解
    目录Node.js node-schedule使用安装使用开启定时任务取消定时任务node-schedule定时只执行一次任务以下,是官方npm的示例中文解释Node.js node...
    99+
    2022-11-13
    Node.js定时任务 node-schedule使用 Node.js使用node-schedule
  • node.js中使用node-schedule实现定时任务实例
    有的时候需要根据业务需要,晚上凌晨以后执行某些操作的时候,这个可能会有所帮助,我最近正在研究这个,欢迎共同探讨。 github地址:https://github.com/mattpat/node-sched...
    99+
    2022-06-04
    实例 node js
  • Python利用sched模块实现定时任务
    目录牛刀小试进阶使用在固定时间执行任务执行多个任务以不同的优先级执行不同的任务定时任务加上取消方法执行备份程序执行定时分发邮件的程序今天我们来介绍一下Python当中的定时任务,主要...
    99+
    2023-05-14
    Python sched实现定时任务 Python sched定时任务 Python 定时任务 Python sched
  • Python使用apscheduler模块设置定时任务的实现
    目录一、安装二、ApScheduler 简介1 APScheduler的组件2 调度器的种类3 内置的触发器类型三、使用举例1 使用date类型的触发器2 使用interval类型的...
    99+
    2022-11-11
  • Spring Boot使用Schedule实现定时任务的方法
    目录0. 开发环境1. 简单定时任务1.1 @Scheduled(cron = “0/10 * * * * ”)1.2 @Scheduled(fixedRat...
    99+
    2023-03-22
    Spring Boot Schedule定时任务 Spring Boot 定时任务
  • node项目中如何使用Node Schedule创建定时任务
    这篇文章主要介绍了node项目中如何使用Node Schedule创建定时任务,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。nodejs的后...
    99+
    2022-10-19
  • Python中怎么使用apscheduler定时执行任务
    今天小编给大家分享一下Python中怎么使用apscheduler定时执行任务的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-06-29
  • SpringBoot中怎么使用定时任务
    本篇文章为大家展示了SpringBoot中怎么使用定时任务,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1. 线程实现利用线程可以设定休眠时间的方式可以实现简单的定时任务逻辑。  ...
    99+
    2023-06-02
  • 用Python怎么实现定时任务
    本篇文章给大家分享的是有关用Python怎么实现定时任务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、发送消息import smtplibfrom em...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作