使用django-crontab实现定时任务的示例

yipeiwu_com6年前Python基础

今天打算在自己的 Django 应用中添加一个定时任务来定时执行一些定期检查的功能,因此想到了使用 django-crontab 插件可以满足我的需求,下面就是这个插件的使用方法。

首先使用pip安装 django-crontab 插件

pip install django-crontab

创建要定期执行的脚本和方法,这里假设脚本名称叫cron.py,内容如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

def check():
  print "hello django-crontab"

然后在自己应用的 settings.py 文件中添加这个app

INSTALLED_APPS = (
  ...
  'django_crontab',
)

同时在 settings.py 文件中添加 CRONJOBS 配置,内容如下:

CRONJOBS = [
  ('*/1 * * * *', 'cron.check','>>/tmp/test.log')
]

其中:
- 第一个参数是 cron 表达式,定义定时任务的执行时间。
- 第二个参数是要执行的模块和函数。
- 第三个参数是执行定时脚本时日志文件的路径。

定义了定时任务和脚本,下面看看怎样使其生效。

首先查看一下系统中已有的 cron job

python manage.py crontab show 

添加和修改 cron job

python manage.py crontab add 

删除 cron job

python manage.py crontab remove

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python字典实现简单的三级菜单(实例讲解)

如下所示: data = { "北京":{ "昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]}, "朝阳":{"望京":...

对python中数据集划分函数StratifiedShuffleSplit的使用详解

对python中数据集划分函数StratifiedShuffleSplit的使用详解

文章开始先讲下交叉验证,这个概念同样适用于这个划分函数 1.交叉验证(Cross-validation) 交叉验证是指在给定的建模样本中,拿出其中的大部分样本进行模型训练,生成模型,留小...

在Python中使用filter去除列表中值为假及空字符串的例子

在 Python中,认为以下值为假: None # None值 False # False值 0 # 数值零不管它是int,float还是complex类型 '',(),[] #...

python实现的防DDoS脚本

python实现的防DDoS脚本

这篇博可以说连开场白都可以省掉了,之所以被DDoS,并不是因为惹了疯狗被追着咬,而是因为VC悲剧之后流量全到simplecd来了。 不仅如此,一些笨蛋们在抓站,一些笨蛋们在用迅雷下载,1...

python 用下标截取字符串的实例

运行环境: win7 64位 python 2.7 pycharm python 源码如下 # -*- coding: utf-8 -*- str = '0123456789'...