#所需模塊flask_apscheduler
#encodig=utf-8 from flask import Flask, request from flask_apscheduler import APScheduler class Config(object): # 創建配置,用類 # 任務列表 JOBS = [ # { # 第一個任務 # 'id': 'job1', # 'func': '__main__:job_1', # 'args': (1, 2), # 'trigger': 'cron', # cron表示定時任務 # 'hour': 19, # 'minute': 27 # }, { # 第二個任務,每隔5S執行一次 'id': 'job2', 'func': '__main__:method_test', # 方法名 'args': (1,2), # 入參 'trigger': 'interval', # interval表示循環任務 'seconds': 5, } ] def method_test(a,b): print(a+b) app = Flask(__name__) app.config.from_object(Config()) # 為實例化的flask引入配置 ## @app.route("/hello",methods=["POST","GET"]) def check(): return "success",200 if __name__ == '__main__': scheduler=APScheduler() scheduler.init_app(app) scheduler.start() app.run(debug=False)
add_job的第二個參數是trigger,它管理着作業的調度方式。它可以為date, interval或者cron。對於不同的trigger,對應的參數也相同。
cron定時調度
year (int|str) – 4位數年份
month (int|str) – 月(1-12)
day (int|str) – 日(1-31)
week (int|str) – ISO week (1-53)
day_of_week (int|str) – 工作日的編號或名稱(0-6或周一、周二、周三、周四、周五、周六、周日)
hour (int|str) – hour (0-23)
minute (int|str) – minute (0-59)
second (int|str) – second (0-59)
start_date (datetime|str) – 最早可能觸發的日期/時間(包括)
end_date (datetime|str) – 最晚可能觸發的日期/時間(包括)
timezone (datetime.tzinfo|str) – 用於日期/時間計算的時區(默認為計划程序時區)
interval間隔調度
它的參數如下:
weeks (int) – number of weeks to wait
days (int) – number of days to wait
hours (int) – number of hours to wait
minutes (int) – number of minutes to wait
seconds (int) – number of seconds to wait
start_date (datetime|str) – 間隔計算的起點
end_date (datetime|str) – 最晚可能觸發的日期/時間
timezone (datetime.tzinfo|str) – 用於日期/時間計算的時區
date定時調度
最基本的一種調度,作業只會執行一次。它的參數如下:
run_date (datetime|str) – the date/time to run the job at
timezone (datetime.tzinfo|str) – time zone for run_date if it doesn’t have one already
喜歡這篇文章?歡迎打賞~~