【Django】定时任务
一、模块的安装
pip install django-crontab
二、配置文件中的写法
#app的注册
INSTALLED_APPS = (
'hoolai.development_proportion',
'django_redis',
"django-crontab",
)
#以上是djanjo1.8中的写法2.0以后应该是中括号,里面内容的写法是一样的
BASE_DIR = '/tmp'
CRONJOBS = [
('13 * * * *', 'func', '>>' + os.path.join(BASE_DIR, 'crons.log')),
('0 * * * *', '要执行的函数', '>>' + os.path.join(BASE_DIR, 'crons.log')),
]
#函数为在项目文件夹中的函数,>>后面的内容为写日志
四、命令的执行
1、启动项目之后要想定时任务执行需要执行以下命令
# 添加定时任务到系统中
python manage.py crontab add
# 显示已经激活的定时任务
python manage.py crontab show
2、其他相关命令
# 移除定时任务
python manage.py crontab remove
五、定时任务参数详解
基本格式 :
* * * * *
分 时 日 月 周 命令
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点半