用 django-crontab 为 Django 添加定时任务,这个插件只能在linux下使用


发布时间:2020-01-23 00:40    作者: Uncle Hui   已过去:6 月,2 周   阅读总量:230 已被赞:0


用 django-crontab 为 Django 添加定时任务,这个插件只能在linux下使用,

安装第三方包 django-crontab
pip install django-crontab

 # 配置文件 settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
     ''''''
    'apps.blog',
    'django_crontab',#定时器
]

 # 子应用下某个 py 文件里添加任务函数 # blog/cron.py

def email_subscriptions():
      pass

 settings.py

#定时器配置
CRONJOBS = [

#每天6点9分执行一次邮件发送函数
 ('0 6 * * 0-6', 'apps.blog.cron.email_subscriptions','>>/home/send_mail.txt'),
]

如果你在INSTALLED_APPS = 【这里注册app的时候是个什么名字,上面就要用上面名字,不然找不到】

对任务的操作命令 添加并启动任务 查看任务 删除任务
python manage.py crontab add  每次修改定时任务都要执行这句  添加并启动任务
python manage.py crontab show  查看任务 
python manage.py crontab remove  删除任务

前5个(*)星号

M(分钟0-59)

H(小时0-23) D(天1-31)

m(月1-12)

d(一星期0-6,0为星期天)

特殊符号 * 代表所有的取值范围的数字

/ 代表每的意思,

*/5就是每5个单位

- 代表从某个数字到某个数字 ,

分开几个离散的数字

eg: 0 14 * * 1-5 周一到周五每天下午两点触发任务

0 10 * * 0,6 周六、周天早上十点触发任务

*/5 9-10 * * 1-5 周一到周五九点到十点每五分钟触发任务

# 将在任务函数中 print 的内容打印到你指定的文件中

 ('0 6 * * 0-6', 'apps.blog.cron.email_subscriptions','>>/home/send_mail.txt'),

自动保存任务日志到/home/send_mail.txt'

 

点赞

0




登陆后方可评论