详解Python下Flask-ApScheduler快速指南


Posted in Python onNovember 04, 2018

引言:Flask是Python社区非常流行的一个Web开发框架,本文将尝试将介绍APScheduler应用于Flask之中。

1. Flask介绍

 Flask是Python社区大名鼎鼎的"microframework",基于简单的核心,使用extension来增加其他功能,其提供非常丰富易用的扩展包,

比如:

2.  Flask-APScheduler

社区提供了一个Flask-APScheduler的模块,方便大家直接在Flask模块中使用APScheduler。 关于安装的命令,仍然是使用

pip来进行:

>> pip install Flask-APScheduler

3.  如何使用Flask-APScheduler?

关于如何使用,直接代码演示:

#!/usr/bin/env python2
# -*- coding: utf-8 -*-
"""
Created on Mon Apr 17 22:27:34 2017
 
@author: bladestone
"""
from flask_apscheduler import APScheduler
from flask import Flask
import datetime
 
class Config(object):
  JOBS = [
      {
        'id':'job1',
        'func':'flask-ap:test_data',
        'args': '',
        'trigger': {
          'type': 'cron',
          'day_of_week':"mon-fri",
          'hour':'0-23',
          'minute':'0-11',
          'second': '*/5'
        }
 
       }
    ]
    
  SCHEDULER_API_ENABLED = True
 
app = Flask(__name__, static_url_path='')
 
@app.route("/")
def hello():
  return "hello world"
  
def test_data():
  print("I am working:%s" % (datetime.datetime.now()))
 
if __name__ == '__main__':
  scheduler = APScheduler()
  print("Let us run out of the loop")
  app.config.from_object(Config())
 
  # it is also possible to enable the API directly
  # scheduler.api_enabled = True
  scheduler.init_app(app)
  scheduler.start()
 
  app.run(debug=False)

代码说明:

这里首先使用了一个Config对象来包装APScheduler的配置信息,然后通过app.config.from_object()的方式,读取配置信息。 基于scheduler.init_app(app)初始化到app中,最后启动scheduler的操作。

类似的Scheduler的配置还有如下:

JOBS = [
    {
      'id': 'job1',
      'func': 'jobs:job1',
      'args': (1, 2),
      'trigger': 'interval',
      'seconds': 10
    }
  ]

这个Scheduler是每隔10秒进行调度一次。

更多的关于flask-apscheduler的示例代码可以访问:https://github.com/viniciuschiele/flask-apscheduler/tree/master/examples

4. 总结

flask-apscheduler从定位上讲,只是将APScheduler转换为了Flask可以接受的方式,从而进行任务的调度处理,主要的调度操作还是需要参照APScheduler来进行的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python黑帽编程 3.4 跨越VLAN详解
Sep 28 Python
linecache模块加载和缓存文件内容详解
Jan 11 Python
Python实现按当前日期(年、月、日)创建多级目录的方法
Apr 26 Python
Python+Pyqt实现简单GUI电子时钟
Feb 22 Python
Django使用中间件解决前后端同源策略问题
Sep 02 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
python collections模块的使用
Oct 16 Python
详解如何使用Pytest进行自动化测试
Jan 14 Python
Python制作一个随机抽奖小工具的实现
Jul 07 Python
Python爬虫 简单介绍一下Xpath及使用
Apr 26 Python
python双向链表实例详解
May 25 Python
Python中修改字符串的四种方法
Nov 02 #Python
Python中flatten( )函数及函数用法详解
Nov 02 #Python
[原创]Python入门教程5. 字典基本操作【定义、运算、常用函数】
Nov 01 #Python
Python拼接字符串的7种方法总结
Nov 01 #Python
在python中bool函数的取值方法
Nov 01 #Python
numpy给array增加维度np.newaxis的实例
Nov 01 #Python
Python 中导入csv数据的三种方法
Nov 01 #Python
You might like
php 判断数组是几维数组
2013/03/20 PHP
php环境无法上传文件的解决方法
2014/04/30 PHP
php实现阳历阴历互转的方法
2015/10/28 PHP
JavaScript定义类或函数的几种方式小结
2011/01/09 Javascript
容易被忽略的JS脚本特性
2011/09/13 Javascript
判断对象是否Window的实现代码
2012/01/10 Javascript
JavaScript 参数中的数组展开 [译]
2012/09/21 Javascript
JavaScript中json对象和string对象之间相互转化
2012/12/26 Javascript
js自定义事件及事件交互原理概述(二)
2013/02/01 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
javascript中打印当前的时间实现思路及代码
2013/12/18 Javascript
Script标签与访问HTML页面详解
2014/01/10 Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
2014/01/25 Javascript
使用jQuery时Form表单元素ID和name命名大忌
2014/03/06 Javascript
javascript写的异步加载js文件函数(支持数组传参)
2014/06/07 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
jquery操作angularjs对象
2015/06/26 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
Angular2 多级注入器详解及实例
2016/10/30 Javascript
清除输入框内的空格
2016/12/21 Javascript
JavaScript 通过Ajax 动态加载CheckBox复选框
2017/08/31 Javascript
微信小程序时间选择插件使用详解
2018/12/28 Javascript
JavaScript寄生组合式继承原理与用法分析
2019/01/11 Javascript
在vue中根据光标的显示与消失实现下拉列表
2019/09/29 Javascript
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
python中列表元素连接方法join用法实例
2015/04/07 Python
对python中for、if、while的区别与比较方法
2018/06/25 Python
python DataFrame转dict字典过程详解
2019/12/26 Python
简单了解django处理跨域请求最佳解决方案
2020/03/25 Python
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
COS美国官网:知名服装品牌
2019/04/08 全球购物
市场营销毕业生自荐信范文
2014/04/01 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
2015年教师节贺卡寄语
2015/03/24 职场文书
MySQL子查询中order by不生效问题的解决方法
2021/08/02 MySQL
奥特曼十大神器:奥特手镯在榜,第一是贝利亚的神器
2022/03/18 日漫