apscheduler
apscheduler分为4个模块,分别是Triggers,Job stores,Executors,Schedulers.
Triggers 触发器
- date 一次性任务,需要具体时间
- interval 循环任务
- cron 定时任务
# coding:utf-8
from apscheduler.schedulers.blocking import BlockingScheduler
import datetime
def aps_test(x):
print datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'), x
scheduler = BlockingScheduler()
scheduler.add_job(func=aps_test, args=('定时任务',), trigger='cron', second='*/5')
scheduler.add_job(func=aps_test, args=('一次性任务',), next_run_time=datetime.datetime.now() + datetime.timedelta(seconds=12))
scheduler.add_job(func=aps_test, args=('循环任务',), trigger='interval', seconds=3)
scheduler.add_listener(my_listener, EVENT_JOB_EXECUTED | EVENT_JOB_ERROR)
scheduler._logger = logging
scheduler.start()