APScheduler —— Python化的Cron
2015-09-17 15:30
507 查看
APScheduler全程为Advanced Python Scheduler,是一款轻量级的Python任务调度框架。它允许你像Cron那样安排定期执行的任务,并且支持Python函数或任意可调用的对象。 安装APScheduler 可以使用pip工具安装: pip install apscheduler 或在Pypi上下载最新的源码包(https://pypi.python.org/pypi/APScheduler/)进行安装: python setup.py install 简单的应用(翻译自官方文档) 以默认配置启动Scheduler
1.基于固定时间的调度:
2.周期任务:
装饰器版本:
3.Cron风格的任务的调度:
装饰器版本:
更强大的使用方法可以进一步参考官方文档。
from apscheduler.schedulerimport Scheduler sched= Scheduler() sched.start()
from
apscheduler.scheduler
import
Scheduler
sched
=
Scheduler()
sched.start()
1.基于固定时间的调度:
from datetime import date
from apscheduler.schedulerimport 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!"
更强大的使用方法可以进一步参考官方文档。
相关文章推荐
- 【Python之旅】第二篇(八):zip拉链与map拉链
- python的log使.
- python中str函数isdigit、isdecimal、isnumeric的区别
- 【Python之旅】第二篇(七):集合
- 【Python之旅】第二篇(七):集合
- Windows下PyInstaller的使用教程
- 在使用python+selenium时调用各种浏览器的dirver配置
- win8 安装python
- ubuntu更改python版本
- Windows双击执行python文件
- windows环境下搭建python+nltk开发环境
- Python生成一定范围内指定数目的无重复随机数
- python操作Excel文件
- [python] 0x9 Python Tutorial: Command Automation
- python列表类型内建函数
- python处理Unicode规则
- 运行一个python写的cgi脚本
- 使用python发起post请求
- 实战抓取糗事百科
- 【Python之旅】第二篇(六):enumerate枚举