此文包含了创建项目及应用的方法,可直接阅读安装django-crontab部分。
django-admin startproject testProject(项目名)
python3 manage.py startapp TestCrontab(应用名)
pip3 install django-crontab
def timedExecution():
print('-------test--------')
INSTALLED_APPS = [
...
'django_crontab', #定时任务,需放置在应用之前
'TestCrontab' #创建的app名
...
]
# 解决中文乱码问题
CRONTAB_COMMAND_PREFIX = 'LANG_ALL=zh_cn.UTF-8'
# 存放log的路径
CRONJOBS_DIR = "/Users/xyt/Desktop/myDjango/"
# Log文件名
CRONJOBS_FILE_NAME = "CRONJOBS.log"
# 添加定时任务(函数中的输出语句,是输出在.log文件中的)
CRONJOBS = (
# 每分钟执行一次TestCrontab App中crontabFun的timedExecution函数,执行后将打印结果存储在log文件中
# '2>&1'每项工作执行后要做的事
('*/1 * * * *', 'TestCrontab.crontabFun.timedExecution', '>>'+CRONJOBS_DIR+CRONJOBS_FILE_NAME + ' 2>&1'), # 每分钟执行一次
('00 11 * * *', 'TestCrontab.crontabFun.timedExecution', '>>'+CRONJOBS_DIR+CRONJOBS_FILE_NAME + ' 2>&1'), # 每天11点执行
('0 */1 * * *', 'TestCrontab.crontabFun.timedExecution', '>>'+CRONJOBS_DIR+CRONJOBS_FILE_NAME + ' 2>&1'), # 每小时执行一次
# * * * * *
# 分钟(0-59) 小时(0-23) 每个月的哪一天(1-31) 月份(1-12) 周几(0-6)
)
python3 manage.py crontab add
python3 manage.py crontab show
python3 manage.py crontab remove