django中使用第三方包实现定时任务
# 转载请留言联系
在做主页静态化的时候,需要定时生成主页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
代码成就万世基积沙镇海,梦想永在凌云意意气风发。