django-crontab 定時任務
阿新 • • 發佈:2018-11-22
定時任務
對於首頁的靜態化,考慮到頁面的資料可能由多名運營人員維護,並且經常變動,所以將其做成定時任務,即定時執行靜態化。
在Django執行定時任務,可以通過django-crontab擴充套件來實現。
1. 安裝
pip install django-crontab
2. 新增應用
INSTALLED_APPS = [
...
'django_crontab', # 定時任務
...
]
3. 設定任務的定時時間
在配置檔案中設定定時執行的時間
每個定時任務分為三部分定義:
-
任務時間
基本格式 :
-
任務方法
-
任務日誌
首頁的定時任務設定如下
# 定時任務
CRONJOBS = [
# 每5分鐘執行一次生成主頁靜態檔案
('*/5 * * * *', 'contents.crons.generate_static_index_html', '>> /Users/delron/Desktop/******/logs/crontab.log' ) # 這裡是你的日誌路徑
]
4. 解決中文字元問題
在定時任務中,如果出現非英文字元,會出現字元異常錯誤
可以通過在配置檔案中新增定時任務執行的附加命令來實現
# 解決crontab中文問題
CRONTAB_COMMAND_PREFIX = 'LANG_ALL=zh_cn.UTF-8'
5. 開啟定時任務
新增定時任務到系統中
python manage.py crontab add
顯示已經啟用的定時任務
python manage.py crontab show
移除定時任務
python manage.py crontab remove