APScheduler —— Python化的Cron
APScheduler全程为Advanced Python Scheduler,是一款轻量级的Python任务调度框架。它允许你像Cron那样安排定期执行的任务,并且支持Python函数或任意可调用的对象。
安装APScheduler
可以使用pip工具安装:
pip install apscheduler
或在Pypi上下载最新的源码包(https://pypi.python.org/pypi/APScheduler/)进行安装:
python setup.py install
简单的应用(翻译自官方文档)
以默认配置启动Scheduler
from apscheduler.scheduler import Scheduler sched = Scheduler()
sched.start()
from apscheduler.scheduler import Scheduler
sched = Scheduler()
sched.start()
1.基于固定时间的调度:
from datetime import date
from apscheduler.scheduler import Scheduler # 启动Scheduler
sched = Scheduler()
sched.start() # 定义被自动调度的函数
def my_job(text):
print text # 定义任务的执行时间(2013年5月17日)
exec_date = date(2013, 5, 17) # 加入到任务队列,并将其赋值给变量以方便取消等操作
job = sched.add_date_job(my_job, exec_date, ['text'])
2.周期任务:
def job_function():
print "Hello World" # job_function将会每两小时执行一次
sched.add_interval_job(job_function, hours=2) # 与上面的任务相同,不过规定在2013-5-17 18:30之后才开始运行
sched.add_interval_job(job_function, hours=2, start_date='2013-5-17 18:30')
装饰器版本:
@sched.interval_schedule(hours=2)
def job_function():
print "Hello World"
3.Cron风格的任务的调度:
def job_function():
print "Hello World" # 安排job_function函数将会在六月、七月、十一月和十二月的第三个星期五中的0点、1点、2点和3点分别执行
sched.add_cron_job(job_function, month='6-8,11-12', day='3rd fri', hour='0-3')
装饰器版本:
@sched.cron_schedule(day='last sun')
def some_decorated_task():
print "I am printed at 00:00:00 on the last Sunday of every month!"
更强大的使用方法可以进一步参考官方文档。
APScheduler —— Python化的Cron的更多相关文章
- APScheduler(Python化的Cron)使用总结 定时任务
APScheduler(Python化的Cron)使用总结 简介 APScheduler全程为Advanced Python Scheduler,是一款轻量级的Python任务调度框架.它允许你像Cr ...
- Python定时任务框架APScheduler 3.0.3 Cron示例
APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务.基 ...
- APScheduler(python 定时任务框架)最简单使用教程
有时候需要部署一些很简单的python定时任务,使用APScheduler是很好的选择.只需要简单的设置几个参数,就可以实现定时.定分甚至秒来跑. 第一步:用pip安装APScheduler pip ...
- PYNQ = Python + ZYNQ —— ZYNQ部分功能的Python化
PYNQ优点:1. Python用于ZYNQ开发,Python库和FPGA硬件库可以直接调用,极大加快开发进程.缩短开发周期.降低开发难度,更方便.快捷:2. 用PYNQ开发,当Pytho ...
- pythonic——python化的语法
1.unpacking 使用类似tuple的形式多项赋值,而不是逐项: list1 = ['hello','world','python','java'] # h = list1[0] # w = l ...
- APScheduler
目录 APScheduler简介 支持的后端存储作业 集成的Python框架 APScheduler下载安装 APScheduler组件 各组件简介 调度器 作业存储器 执行器 触发器 使用 添加作业 ...
- python APScheduler
简介 APScheduler基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务 ...
- 关于linux上cron服务的python封装工具
关于cron:定时任务服务,一般linux自带且已启动.(pgrep cron查看cron服务是否启动了.) 关于plan:一个通过python来定制cron服务的工具.其官网:http://plan ...
- 适用于 PHP 开发人员的 Python 基础知识
Thomas Myer, 负责人, Triple Dog Dare Media 简介: 您是一名经验丰富的 PHP 开发人员,并且希望学习 Python 吗?本文将从 PHP 开发人员的角度来探索 P ...
随机推荐
- 在Myeclipse buildpath 加server lib (server runtime)/项目导入时报错:The import javax.servlet.http.HttpServletRequest cannot be resolved
来源于:http://blog.csdn.net/dingqinghu/article/details/8805922 http://yl-fighting.iteye.com/blog/140946 ...
- Http状态码集合
忘了之前在哪里收集的了,先表示感谢. 状态码 含义 100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请 ...
- Python 之我见
读音 Python(KK 英语发音:/ˈpaɪθən/) 序言 其实早前就已经接触了python这个功能强大的脚本语言,但是那时只是基于兴趣而学习,目的性并不是很强,所以学习的并不是很深入.最近由于闲 ...
- 打印cell的视图层次结构
#ifdef DEBUG NSLog(@"Cell recursive description:\n\n%@\n\n", [cell performSelector:@select ...
- BZOJ-1433 假期的宿舍 最大流+基础建图
网络流练习ing.. 1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 1748 Solved: 765 [S ...
- jsp学习一
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1&q ...
- Linux文件目录权限浅谈
1.基本权限三种(1)r (read) 读 针对目录,有读(r)权限就代表能对此目录有列表功能,就是可以执行ls命令进行查看,另外还有cp的功能.针对文件,有读(r)权限就代表能对此文件有阅读功能,可 ...
- 栈的的顺序实例SeqStack实现
1.#include <stdio.h>#include <stdlib.h>#include "SeqStack.h"/* run this progra ...
- c++ std::string.c_str()
语法: const char *c_str();搜索 c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过 ...
- json格式不对引起的报错
报JSONDecondeError这种类型的错误的时候就要检查下json格式是否是正确的了,这里提供一个http://www.bejson.com/ Traceback (most recent ca ...