详解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常见文件操作的函数示例代码
Nov 15 Python
使用Python中的cookielib模拟登录网站
Apr 09 Python
简单介绍Python中的几种数据类型
Jan 02 Python
python 与GO中操作slice,list的方式实例代码
Mar 20 Python
Python中 传递值 和 传递引用 的区别解析
Feb 22 Python
python list是否包含另一个list所有元素的实例
May 04 Python
Python实现图片拼接的代码
Jul 02 Python
Python 如何优雅的将数字转化为时间格式的方法
Sep 26 Python
基于torch.where和布尔索引的速度比较
Jan 02 Python
python实现图书馆抢座(自动预约)功能的示例代码
Sep 29 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
Dec 16 Python
python实现层次聚类的方法
Nov 01 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生成静态页面教程
2012/01/10 PHP
IIS6.0中配置php服务全过程解析
2013/08/07 PHP
PHP对表单提交特殊字符的过滤和处理方法汇总
2014/02/18 PHP
php验证是否是md5编码的简单代码
2014/04/01 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(四)
2014/06/23 PHP
CI框架安全类Security.php源码分析
2014/11/04 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
Laravel 类和接口注入相关的代码
2019/10/15 PHP
javascript 模式设计之工厂模式学习心得
2010/04/27 Javascript
js 用CreateElement动态创建标签示例
2013/11/20 Javascript
原生js实现新闻列表展开/收起全文功能
2017/01/20 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
js获取元素的偏移量offset简单方法(必看)
2017/07/05 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
2017/09/21 Javascript
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
使用gulp构建前端自动化的方法示例
2018/12/25 Javascript
使用typescript构建Vue应用的实现
2019/08/26 Javascript
vue自定义switch开关组件,实现样式可自行更改
2019/11/01 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
Python语言描述随机梯度下降法
2018/01/04 Python
Python列表(List)知识点总结
2019/02/18 Python
Python3.5 Pandas模块之Series用法实例分析
2019/04/23 Python
python3模拟实现xshell远程执行liunx命令的方法
2019/07/12 Python
Python hashlib常见摘要算法详解
2020/01/13 Python
python实现用户名密码校验
2020/03/18 Python
python爬虫学习笔记之pyquery模块基本用法详解
2020/04/09 Python
年终考核评语
2014/01/19 职场文书
聘任书的写作格式及范文
2014/03/29 职场文书
敬老院活动总结
2014/04/28 职场文书
2016年度农村党员干部主题教育活动总结
2016/04/06 职场文书
2019入党申请书格式
2019/06/25 职场文书
Nginx实现会话保持的两种方式
2022/03/18 Servers
什么是css原子化,有什么用?
2022/04/24 HTML / CSS