详解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生成随机mac地址的方法
Mar 16 Python
安装Python的web.py框架并从hello world开始编程
Apr 25 Python
python numpy中cumsum的用法详解
Oct 17 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
Feb 18 Python
python检查目录文件权限并修改目录文件权限的操作
Mar 11 Python
基于Python共轭梯度法与最速下降法之间的对比
Apr 02 Python
Python flask路由间传递变量实例详解
Jun 03 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
Oct 27 Python
python中doctest库实例用法
Dec 31 Python
Python命令行参数argv和argparse该如何使用
Feb 08 Python
Python中使用subprocess库创建附加进程
May 11 Python
Python实现单例模式的5种方法
Jun 15 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
一个ftp类(ini.php)
2006/10/09 PHP
PHP安全配置
2006/10/09 PHP
php adodb连接带密码access数据库实例,测试成功
2008/05/14 PHP
linux下编译安装memcached服务
2014/08/03 PHP
ThinkPHP中使用ajax接收json数据的方法
2014/12/18 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
2016/04/02 PHP
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
利用PHP生成静态html页面的原理
2016/09/30 PHP
js取float型小数点后两位数的方法
2014/01/18 Javascript
JQuery跳出each循环的方法
2015/04/16 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
[01:38]2018DOTA2亚洲邀请赛主赛事第二日现场采访 神秘商人痛陈生计不易
2018/04/05 DOTA
Python可变参数函数用法实例
2015/07/07 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
Python全局变量与局部变量区别及用法分析
2018/09/03 Python
Windows下安装Scrapy
2018/10/17 Python
python实现维吉尼亚加密法
2019/03/20 Python
使用Python测试Ping主机IP和某端口是否开放的实例
2019/12/17 Python
pandas中read_csv、rolling、expanding用法详解
2020/04/21 Python
Python3爬虫中关于中文分词的详解
2020/07/29 Python
爱游人:Travelliker
2017/09/05 全球购物
美国亚马逊旗下时尚女装网店:SHOPBOP(支持中文)
2020/10/17 全球购物
高中数学教师求职信
2013/10/30 职场文书
营业经理岗位职责
2013/11/10 职场文书
国际商务系学生个人的自我评价
2013/11/26 职场文书
党员组织关系介绍信
2014/02/13 职场文书
房地产项目建议书
2014/03/12 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
员工年终考核评语
2014/12/31 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
传单、海报早OUT了,另类传单营销方案送给你!
2019/07/15 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python
Django操作cookie的实现
2021/05/26 Python
MySQL库表名大小写的选择
2021/06/05 MySQL
mysql如何能有效防止删库跑路
2021/10/05 MySQL
MYSQL 运算符总结
2021/11/11 MySQL