django定时任务实现(言简意赅) Django折腾记之启动定时任务(转)

最近做一个小项目,用Django搭建的服务器,着实折腾了我一周的时间,这里一点一点记下来,以免忘记。

在这个项目中我需要用到一个每隔60s就去执行的一个函数的功能,而且需要在服务器启动时就要启动这个定时任务.

折腾了一下无终于找到了一个比较好用的方法,在这分享一下

首先,定时任务用到了APScheduler这样的一个库,我们在Linux下需要安装一下

这里使用

[html] view plain copy
 
  1. pip install apscheduler==2.1.2  

进行安装,

安装完成后,找到你的Django工程目录下的urls.py文件,在最下面添加以下代码

[python] view plain copy
 
  1. from apscheduler.scheduler import Scheduler  
  2.   
  3. from push.views import checkUserFiles  



#这里的这个checkUserFiles方法是我在views.py文件中定义的一个方法,也正是我需要执行的定时任务,这个方法可以定义在views.py文件中,也可以直接把方法体写在下面的mytask方法中

[python] view plain copy
 
  1. sched = Scheduler()  
  2.  
  3. @sched.interval_schedule(seconds=60)  
  4.   
  5. def mytask():  
  6.   
  7.     chekUserFiles()  
  8.   
  9. sched.start  



完成上面的这些步骤以后,再执行一次

[html] view plain copy
 
  1. python manager.py runserver 0.0.0.0:8000  
原文地址:https://www.cnblogs.com/AmilyWilly/p/6438472.html