Django 定时任务


本文介绍怎么在一个django的项目里增加定时任务。

使用的框架为APScheduler, 安装APScheduler:

pip install apscheduler==2.1.2 

 安装完成后,打开django web 项目的urls.py 增加以下内容:

from apscheduler.scheduler import  Scheduler
from siteathome import tests

sched = Scheduler()

@sched.interval_schedule(seconds=60)
def my_task():
    tests.testFuncton()

sched.start()

其中, siteathome.tests 里面的testFunction()是需要被定时执行的任务,这里定义每60秒执行一次。

def testFuncton():
    print("Hello Scheduler")

启动django 项目, 观察控制台,每60秒会有一个Hello Scheduler 输出:

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
November 15, 2017 - 21:42:16
Django version 1.11, using settings 'djangoathome.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
Hello Scheduler
Hello Scheduler
Hello Scheduler
Hello Scheduler
Hello Scheduler
Hello Scheduler
Hello Scheduler
Hello Scheduler

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM