django定时任务(django-crontab)
在Django中使用django-crontab实现定时任务,首先需要安装django-crontab包:
pip install django-crontab
然后,在Django的settings.py文件中添加该应用:
INSTALLED_APPS = [
# ...
'django_crontab',
# ...
]
之后,你可以在Django的任何app下创建一个cron.py
文件,并在该文件中定义你的定时任务。例如,每5分钟执行一次的定时任务可以这样写:
# app/cron.py
from django.core.management import call_command
from django_crontab import tasks
# 每5分钟执行一次
@tasks.loop(minutes=5)
def my_periodic_task():
call_command('my_custom_command')
# 如果你需要在任务中运行更复杂的代码,可以直接写在这里
# ...
# 启动定时任务
my_periodic_task.start()
最后,在终端中运行以下命令来添加定时任务到系统的定时服务中:
python manage.py crontab add
这样就完成了定时任务的设置。当Django项目运行时,系统的定时服务会根据你在cron.py文件中定义的时间间隔执行这些任务。
评论已关闭