1. 程式人生 > >python3+flask 開發web(九)——flask_apscheduler定時任務框架

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)執行結果

控制檯輸出: