python3+flask 开发web(九)——flask_apscheduler定时任务框架

APScheduler是一款功能非常强大的定时任务框架。利用APScheduler框架我们可以很方便实现一个基于Python的定时任务系统。Flask提供了对应的Flask-APScheduler来集成APScheduler功能。

1)安装

pip install Flask-APScheduler

2)代码:

from flask_apscheduler import APScheduler
from flask import Flask


class Config(object):
    JOBS=[
        {
            'id':'job1',
            'func':'__main__:job_1',
            'args':(1,2),
            'trigger':'cron',
            'hour':17,
            'minute':8
        },
        {
            'id':'job2',
            'func':'__main__:job_1',
            'args':(3,4),
            'trigger':'interval',
            'seconds':5
        }
    ]
def job_1(a,b):   # 一个函数,用来做定时任务的任务。
    print(str(a)+' '+str(b))

app=Flask(__name__) # 实例化flask

app.config.from_object(Config())# 为实例化的flask引入配置

@app.route('/')  # 首页路由
def hello_world():
    return 'hello'


if __name__=='__main__':
    scheduler=APScheduler()  # 实例化APScheduler
    scheduler.init_app(app)  # 把任务列表放进flask
    scheduler.start() # 启动任务列表
    app.run()  # 启动flask

JOBS配置文件中:其中id是一个标识,func指定定时执行的函数,args指定输入参数列表,trigger指定任务类型,如interval表示时间间隔,seconds表示时间周期,单位是秒

3)执行结果

控制台输出:

python3+flask 开发web(九)——flask_apscheduler定时任务框架