django中使用第三方包實現定時任務
阿新 • • 發佈:2018-11-24
# 轉載請留言聯絡
在做主頁靜態化的時候,需要定時生成主頁HTML,以保持資料的最新。
定時任務可以用第三方包django-crontab來實現。
附上官方文件:
pip install django-crontab
-
新增應用
INSTALLED_APPS = [
...
'django_crontab', # 定時任務
...
]
-
設定檔案中進行配置
CRONJOBS = [ # 引數1:定時時間設定,表示每隔3分鐘執行一次 # 引數2:要定義執行的函式 # 引數3:輸出日誌的位置,說明:日誌文字使用絕對路徑,會自動建立 ('*/1 * * * *', 'contents.crons.generate_static_index_html', '>> [日誌路徑]'), ]
相關配置說明:
基本格式 :
* * * * *
分 時 日 月 周 命令
M: 分鐘(0-59) 每分鐘用*或者 */1表示
H:小時(0-23) (0表示0點)
D:天(1-31)
m: 月(1-12)
d: 一星期內的天(0~6,0為星期天)。
“*” 代表取值範圍內的數字,
“/” 代表”每”,
“-” 代表從某個數字到某個數字,
“,” 分開幾個離散的數字
例:
*/5 * * * * 每隔5分鐘
30 9 * * 6,0 週六日9點半
30 6 * * 1-5 週一到週五6點半
-
開啟定時任務
# 新增定時任務到系統中
python manage.py crontab add
# 顯示已經啟用的定時任務
python manage.py crontab show
# 移除定時任務
python manage.py crontab remove