定时器是平时编程中比较常用的,今天分享一个Django里非常好用又简单的定时亲:Django-crontab。这个真的是非常的简单好用,比celery+Django执行周期任务简单的多
首先下载django-crontab.
pip install django-crontab
配置相关信息。
目录setting.py
#将django-crontab注册到app中 INSTALLED_APPS = [ ... 'django_crontab', # 定时任务 ... ] # 定时任务 CRONJOBS = [ # 每5分钟执行一次生成主页静态文件,第一个参数为设置定时器执行的时间,第二个参数是指定定时器执行代码位置,第三个参数为程序结果输出到指定文件。 ('*/5 * * * *', 'mytest.info.generate_static_index_html', '>> /Users/delron/Desktop/******/logs/crontab.log') # 解决crontab中文问题 CRONTAB_COMMAND_PREFIX = 'LANG_ALL=zh_cn.UTF-8' 时间基本格式 : * * * * * 分 时 日 月 周 命令 M: 分钟(0-59)。每分钟用*或者 */1表示 H:小时(0-23)。(0表示0点) D:天(1-31)。 m: 月(1-12)。 d: 一星期内的天(0~6,0为星期天)。
ok,配置完成,接下来就可以开启定时任务啦。
添加定时任务
python manage.py crontab add
查看正在运行的定时任务
python manage.py crontab show
删除定时任务
python manage.py crontab remove