django-crontab 定时执行任务方法

安装 
pip install django-crontab

添加app名称到 settings.py中

INSTALLED_APPS = (
        'django_crontab',
        ...
    )
  •  

到这里基本没有问题。 
接下来创建定时任务可以分成两种,一种是执行自定义的mange.py的命令,另一种是执行自定义函数。

我选择的方法是自定义函数。

首先在原来的app 中(与view.py同级)新建一个cron.py (名字可以任意,其实也可以放在view.py中,新建文件方便管理。)

def test():
    print 123
    #你要执行的任务函数
  • 1
  • 2
  • 3

在 settings.py中的最后增加

CRONJOBS = [
    ('*/5 * * * *', 'appname.cron.test','>>/home/test.log')
]
  • 1
  • 2
  • 3

如果你有多个定时任务,都放入CORJOBS中即可, 
需要说明的是, 
/5 * * *’ 遵循的是crontab 语法。

‘appname.cron.test’,这个appname就是你开发时加入到settings中的那个。因为你的cron.py文件就在这个下面,否则找不到路径。cron 就是你自己起的任务文件的名字。test就是执行的函数中的内容。

‘>>/home/test.log’,通常会输出信息到一个文件中,就使用这个方法,注意的是‘>>’表示追加写入,’>’表示覆盖写入。

启动

以上都完成后,需要执行 
python manage.py crontab add 
将任务添加并生效

显示当前的定时任务 
python manage.py crontab show

删除所有定时任务 
python manage.py crontab remove

重启django服务。 
执行 
corntab -e 
应该是可以看到系统中创建了该定时任务。 
说到底,只是django-crontab插件对linux底层的调用,不确定这个方法在windows 上是否生效。

大家可以多做尝试,看下github上的文档,对理解使用还是非常的有帮助。

各种路径一定要确保正确,否则较难排查错误。

介绍依据个人理解,难免疏忽遗漏,如果能帮到大家最好。

参考链接

github : https://github.com/kraiz/django-crontab

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值