【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点半
原文地址:https://www.cnblogs.com/dxl822/p/12843203.html