flask 使用 flask_apscheduler 做定时循环任务的实现
人气:2我是初学者,对 flask 很陌生,网上搜到的文章都看不懂,很尴尬。
本意是打算对广发信用卡diy卡积分兑换签帐额的数量进行爬虫监控。将抓取到的余量通过钉钉机器人发送到群里。爬虫代码就不写了,这里只写定时任务每分钟抓一次的代码。
不扯淡,直接干
以下代码,都是当前文件和定时器相关的代码,没有将其它代码写进来辣各位的眼睛。
文件夹结构图:
├── app │ ├── test.py │ ├── __init__.py │ └── routes.py ├── config.py ├── requirements.txt └── run.py
config.py :
# 定时任务 class APSchedulerJobConfig(object): SCHEDULER_API_ENABLED = True JOBS = [ { 'id': 'No1', # 任务唯一ID 'func': 'app.test:shishi', # 执行任务的function名称,app.test 就是 app下面的`test.py` 文件,`shishi` 是方法名称。文件模块和方法之间用冒号":",而不是用英文的"." 'args': '', #如果function需要参数,就在这里添加 'trigger': { 'type': 'cron', # 类型 # 'day_of_week': "0-6", # 可定义具体哪几天要执行 # 'hour': '*', # 小时数 # 'minute': '1', 'second': '3' # "*/3" 表示每3秒执行一次,单独一个"3" 表示每分钟的3秒。现在就是每一分钟的第3秒时循环执行。 } } ]
app/__init__.py :
from flask import Flask # 引用 APSchedule from flask_apscheduler import APScheduler # 引用 congfig 配置 from config import Config, APSchedulerJobConfig app = Flask(__name__) # 定时任务,导入配置 # APSchedulerJobConfig 就是在 config.py文件中的 类 名称。 app.config.from_object(APSchedulerJobConfig) # 初始化Flask-APScheduler,定时任务 scheduler = APScheduler() scheduler.init_app(app) scheduler.start()
test.py,是具体需要执行的任务内容:
def shishi(): xxxx
您可能感兴趣的文章:
加载全部内容