使用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中转换角度为弧度的radians()方法

 radians()方法把角度转化为弧度角x。 语法 以下是radians()方法的语法: radians(x) 注意:此函数是无法直接访问的,所以我们需要导入mat...

pyspark 读取csv文件创建DataFrame的两种方法

方法一:用pandas辅助 from pyspark import SparkContext from pyspark.sql import SQLContext import...

深入学习Python中的装饰器使用

装饰器 vs 装饰器模式 首先,大家需要明白的是使用装饰器这个词可能会有不少让大家担忧的地方,因为它很容易和设计模式这本书里面的装饰器模式发生混淆。曾经一度考虑给这个新的功能取一些其它的...

python随机生成指定长度密码的方法

本文实例讲述了python随机生成指定长度密码的方法。分享给大家供大家参考。具体如下: 下面的python代码通过对各种字符进行随机组合生成一个指定长度的随机密码 python中的str...

Python中循环引用(import)失败的解决方法

前言 最近在开发智能家居项目hestia-rpi项目中,由于代码结构层级划分不合理,导致了循环引用(import)module失败的问题,错误如下: Traceback (most r...