flask 使用 flask_apscheduler 做定時迴圈任務的實現
阿新 • • 發佈:2020-01-09
我是初學者,對 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
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。