当前位置:
首页 > temp > 简明python教程 >
-
Python—定时任务(APScheduler实现)
简介
APScheduler的全称是Advanced Python Scheduler。它是一个轻量级的基于Quartz的 Python 定时任务调度框架。APScheduler 支持三种调度任务:固定时间间隔,固定时间点(日期),Linux 下的 Crontab 命令。同时,它还支持异步执行、后台执行调度任务。
github:https://github.com/agronholm/apscheduler
官网文档:https://apscheduler.readthedocs.io/en/latest/
组成
APScheduler整个系统可以说由这五个概念组成:调度器(scheduler),作业存储(job store),触发器(trigger),执行器(executor),任务(job)。
使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import time from apscheduler.schedulers.background import BackgroundScheduler def job_func(name): print name if __name__ = = '__main__' : # 创建后台执行的 schedulers scheduler = BackgroundScheduler() # 每隔3分钟执行一次 job_func 方法 scheduler.add_job(job_func, 'interval' , minutes = 3 , args = [ 'jack!' ]) # 每隔3天17时19分07秒执行一次任务 scheduler.add_job(job_func, 'interval' , days = 03 , hours = 17 , minutes = 19 , seconds = 07 , args = [ 'jack!' ]) # 在 2017-12-13 14:00:01 ~ 2017-12-13 14:00:10 之间, 每隔两分钟执行一次 job_func 方法 scheduler.add_job(job_func, 'interval' , minutes = 2 , start_date = '2017-12-13 14:00:01' , end_date = '2017-12-13 14:00:10' ) # 每天五点执行 scheduler.add_job(job_func, 'cron' , hour = '5' , minute = '00' , second = '00' , args = [ 'jack!' ]) # 每周周五六点执行 scheduler.add_job(job_func, 'cron' , day_of_week = 'fri' , hour = 14 , minute = 22 , args = [ 'jack!' ]) # 在每年 1-3、7-9 月份中的每个星期一、二中的 00:00, 01:00, 02:00 和 03:00 执行 job_func 任务 scheduler.add_job(job_func, 'cron' , month = '1-3,7-9' ,day = '0, tue' , hour = '0-3' ) # 在 2017-12-13 时刻运行一次 job_func 方法 scheduler.add_job(job_func, 'date' , run_date = date( 2017 , 12 , 13 ), args = [ 'jack!' ]) # 在 2017-12-13 14:00:00 时刻运行一次 job_func 方法 scheduler.add_job(job_func, 'date' , run_date = datetime( 2017 , 12 , 13 , 14 , 0 , 0 ), args = [ 'jack!' ]) # 在 2017-12-13 14:00:01 时刻运行一次 job_func 方法 scheduler.add_job(job_func, 'date' , run_date = '2017-12-13 14:00:01' , args = [ 'jack!' ]) # 启动调度任务 scheduler.start() while True : time.sleep( 5 ) |
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数