Flask_apscheduler 实现定时任务demo

使用FLask执行一个定时任务,写了个demo供参考,理所当然只针对flask,如果需要更详尽的使用方法请戳:APScheduler中文翻译
主要工具:flask_apscheduler
接下来上代码

from flask import Flask, request
from flask_apscheduler import APScheduler  # 主要插件
import datetime

app = Flask(__name__)
scheduler = APScheduler()

def task1(a, b):
    print('mession1')
    print(datetime.datetime.now())


def task2(a, b):
    print('mession2')
    print(datetime.datetime.now())


@app.route('/pause', methods=['POST'])
def pausetask():  # 暂停
    data = request.form['id']
    scheduler.pause_job(str(data))
    return "Success!"


@app.route('/resume', methods=['POST'])
def resumetask():  # 恢复
    data = request.form['id']
    scheduler.resume_job(str(data))
    return "Success!"


@app.route('/gettask', methods=['POST'])
def get_task():  # 获取
    data = request.form['id']
    jobs = scheduler.get_jobs()
    print(jobs)
    return '111'


@app.route('/remove_task', methods=['POST'])
def remove_task():  # 移除
    data = request.form['id']
    scheduler.remove_job(str(data))
    return 111


@app.route('/addjob', methods=['GET', 'POST'])
def addtask():
    data = request.form['id']
    if data == '1':
        scheduler.add_job(func=task1, id='1', args=(1, 2), trigger='cron', day_of_week='0-6', hour=18, minute=19,
                          second=10,
                          replace_existing=True)
        # trigger='cron' 表示是一个定时任务
    else:
        scheduler.add_job(func=task2, id='2', args=(1, 2), trigger='interval', seconds=10,
                          replace_existing=True)
        # trigger='interval' 表示是一个循环任务,每隔多久执行一次
    return 'sucess'


if __name__ == '__main__':
    scheduler.init_app(app=app)
    scheduler.start()
    app.run(debug=True, port=8080)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值