zoukankan      html  css  js  c++  java
  • django定时任务

    第一种:

      安装:

            django安装APScheduler

            pip install apscheduler==2.1.2

      定时任务写法:

    from apscheduler.scheduler import Scheduler
    
    sched = Scheduler()
    
    # 按时间段
    @sched.cron_schedule(hour=14, minute=12)
    def my_task():
        print('ceshi')
    
    #按时间间隔
    @sched.interval_schedule(seconds=6)
    def my_tasks():
        print('123')
    
    
    sched.start()
    ###########
    打印
    #########
    Django version 2.2.2, using settings 'ceshi.settings'
    Starting development server at http://127.0.0.1:8000/
    Quit the server with CTRL-BREAK.
    123
    123
    ceshi
    123
    123
    Process finished with exit code 0
    

      

    第二种:

      安装:

        pip install django-apscheduler

        pip install apscheduler

      在settings注册app:

      
    INSTALLED_APPS = ( 
        ....... 
        django_apscheduler, 
    )
    

      注册后数据迁移:python manage.py migrate

      迁移之后会生成两张表:
        
    django_apscheduler_djangojob
        django_apscheduler_djangojobexecution

      views写法:

      

    from apscheduler.schedulers.background import BackgroundScheduler
    from django_apscheduler.jobstores import DjangoJobStore, register_events, register_job
    
    scheduler = BackgroundScheduler()  # 创建一个调度器对象
    scheduler.add_jobstore(DjangoJobStore(), "default")  # 添加一个作业
    try:
        # @register_job(scheduler, "interval", seconds=1)用interval方式 每1秒执行一次
        @register_job(scheduler, 'cron', day_of_week='mon-sun', hour='8', minute='30', second='10', id='delete_stale_data')  # 定时执行:这里定时为周一到周日每天早上8:30执行一次
        def time_task():
            """定时的任务逻辑"""
            print("delete_stale_data")
        register_events(scheduler)
        scheduler.start()
        # scheduler.remove_job(time_task)  # 移除定时任务
    except Exception as e:
        print(e)
        scheduler.shutdown()
    

      

    更多详细请移步:https://www.cnblogs.com/mxhmxh/p/9537191.html

  • 相关阅读:
    python基础总结二
    HTTP和HTTPS的区别
    通过HTTP请求响应过程了解HTTP协议
    稳定性测试+易用性测试
    容错测试点
    功能测试思考点
    功能测试-UI测试思考点
    字符编码-11
    字典+再识函数-8
    web API的概念
  • 原文地址:https://www.cnblogs.com/sunzhiqi/p/14108728.html
Copyright © 2011-2022 走看看