python APScheduler执行定时任务介绍


Posted in Python onApril 19, 2022

一、安装

pip install apscheduler

二、定时执行一次

  • 新建一个scheduler调度器
  • 添加一个job store调度任务
  • 运行调度任务
import datetime
from apscheduler.schedulers.blocking import BlockingScheduler

def task(name):
print('%s告诉你现在时间是:%s' . format(name, datetime.datetime.now()))

# 该任务将会在2022-05-20 13:14:52执行一次
scheduler = BlockingScheduler()
scheduler.add_job(task, 'date', run_date=datetime.datetime(2022, 5, 20, 13, 14, 52), args=['autofelix'], id='task')
scheduler.start()

三、间隔执行

  • 当你调度作业的时候,你需要为这个作业选择一个触发器,用来描述这个作业何时被触发
  • date 一次性指定日期
  • interval 在某个时间范围内间隔多长时间执行一次
from apscheduler.schedulers.blocking import BlockingScheduler

def task():
print('我是飞兔小哥')

# 每隔10秒数执行一次
scheduler = BlockingScheduler()
scheduler.add_job(task, 'interval', seconds=10, id='task')
scheduler.start()

四、每日定时执行一次

  • cron 和Linux crontab格式兼容,最为强大
from apscheduler.schedulers.blocking import BlockingScheduler

f = open('status.text', 'a', encoding='utf8')
sc = BlockingScheduler()
@sc.scheduled_job('cron', day_of_week='*', hour=1, minute='30', second='50')

if name == '__main__':
try:
sc.start()
f.write('定时任务成功执行')
except Exception as e:
sc.shutdown()
f.write('定时任务执行失败')
finally:
f.close()

五、每几分钟执行一次

  • /2:每隔2分钟执行一次
  • /1:每隔1分钟执行一次
from apscheduler.schedulers.blocking import BlockingScheduler

def task():
print('你的任务每隔2分钟执行一次')

scheduler = BlockingScheduler()
scheduler.add_job(job1, 'cron', minute="/2", id='task')
scheduler.start()

六、每小时执行一次

  • jitter:代表可以上下浮动的秒数
from apscheduler.schedulers.blocking import BlockingScheduler

def task():
print('你的任务每隔1小时执行一次')

scheduler = BlockingScheduler()
scheduler.add_job(task, 'interval', hours=1, id='task')
# scheduler.add_job(task, 'interval', hours=1, id='task', jitter=120)
scheduler.start()

七、调度器分类

  • BlockingScheduler : 当调度器是你应用中唯一要运行的东西时
  • BackgroundScheduler : 当你没有运行任何其他框架并希望调度器在你应用的后台执行时使用(充电桩即使用此种方式)
  • AsyncIOScheduler : 当你的程序使用了asyncio(一个异步框架)的时候使用
  • GeventScheduler : 当你的程序使用了gevent(高性能的Python并发框架)的时候使用
  • TornadoScheduler : 当你的程序基于Tornado(一个web框架)的时候使用
  • TwistedScheduler : 当你的程序使用了Twisted(一个异步框架)的时候使用
  • QtScheduler : 如果你的应用是一个Qt应用的时候可以使用

到此这篇关于python 包之 APScheduler 定时任务 的文章就介绍到这了!

Python 相关文章推荐
python文件的md5加密方法
Apr 06 Python
对Python中DataFrame按照行遍历的方法
Apr 08 Python
Python模拟登录的多种方法(四种)
Jun 01 Python
对python中两种列表元素去重函数性能的比较方法
Jun 29 Python
Python3 jupyter notebook 服务器搭建过程
Nov 30 Python
解决Python运行文件出现out of memory框的问题
Dec 03 Python
python实现批量nii文件转换为png图像
Jul 18 Python
基于Python快速处理PDF表格数据
Jun 03 Python
python3 os进行嵌套操作的实例讲解
Nov 19 Python
python-地图可视化组件folium的操作
Dec 14 Python
Python的collections模块真的很好用
Mar 01 Python
教你用Python+selenium搭建自动化测试环境
Jun 18 Python
Python数据可视化之Seaborn的安装及使用
python 闭包函数详细介绍
Apr 19 #Python
Python  lambda匿名函数和三元运算符
Apr 19 #Python
Python使用mitmproxy工具监控手机 下载手机小视频
使用Python通过企业微信应用给企业成员发消息
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 #Python
python在package下继续嵌套一个package
Apr 14 #Python
You might like
NOT NULL 和NULL
2007/01/15 PHP
PHP内核介绍及扩展开发指南―基础知识
2011/09/11 PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
2014/11/22 PHP
PHP获取服务器端信息的方法
2014/11/28 PHP
PHP实现的简单mock json脚本分享
2015/02/10 PHP
[原创]用javascript实现检测指定目录是否存在的方法
2008/01/12 Javascript
ExtJS的FieldSet的column列布局
2009/11/20 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
jQuery通过deferred对象管理ajax异步
2016/05/20 Javascript
jQuery EasyUI提交表单验证
2016/07/19 Javascript
Jquery组件easyUi实现选项卡切换示例
2016/08/23 Javascript
微信小程序 wx:for的使用实例详解
2017/04/27 Javascript
微信通过页面(H5)直接打开本地app的解决方法
2017/09/09 Javascript
快速处理vue渲染前的显示问题
2018/03/05 Javascript
Vue组件Draggable实现拖拽功能
2018/12/01 Javascript
小程序指纹验证的实现代码
2018/12/04 Javascript
JavaScript实现单英文金山打字通
2020/07/24 Javascript
js实现上下左右键盘控制div移动
2020/01/16 Javascript
Python字符串拼接、截取及替换方法总结分析
2016/04/13 Python
Python 新建文件夹与复制文件夹内所有内容的方法
2018/10/27 Python
scrapy-redis的安装部署步骤讲解
2019/02/27 Python
Python的高阶函数用法实例分析
2019/04/11 Python
Python3.5内置模块之random模块用法实例分析
2019/04/26 Python
Python3+Appium安装使用教程
2019/07/05 Python
django 链接多个数据库 并使用原生sql实现
2020/03/28 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
Pycharm 跳转回之前所在页面的操作
2021/02/05 Python
心理健康心得体会
2014/01/02 职场文书
公司庆典活动邀请函
2014/01/09 职场文书
工作时间上网检讨书
2014/02/03 职场文书
公务员更新知识培训实施方案
2014/03/31 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
倡导文明标语
2014/06/16 职场文书
运动会演讲稿100字
2014/08/25 职场文书
亮剑观后感500字
2015/06/05 职场文书
只需要这一行代码就能让python计算速度提高十倍
2021/05/24 Python