python定时任务管理系统_Python定时任务框架APScheduler实战Demo

之前写过一篇关于Flask+ APScheduler的文章,但和Flask关联比较大,在使用上其实不是很方便,这篇文章记录单独起一个定时任务服务,与业务解耦合。

一、安装APScheduler

pip install APScheduler

二、创建任务管理文件task_manage.py

# -*- coding: utf-8 -*-

'''

# Created on 2020-03-29

# 任务管理

# @author: 程好玩

'''

from apscheduler.schedulers.background import BackgroundScheduler

import os, time

# 此方法只是demo,在实际项目中可import业务方法

def test_task():

print('test_task')

if __name__ == '__main__':

scheduler = BackgroundScheduler(timezone='Asia/Shanghai')

# 初始化

test_task()

# 每半小时执行一次

scheduler.add_job(test_task, "interval", minutes=30)

# 每天早晨7:00任务

# scheduler.add_job(test_task, "cron", hour=7, minute=30)

# 每周一早晨7:30任务, day_of_week:(0~6 or mon,tue,wed,thu,fri,sat,sun)

# scheduler.add_job(test_task, "cron", day_of_week= 0, hour=7, minute=30)

# 每月1日早晨8:00任务,day:(1-31)

# scheduler.add_job(test_task, "cron", day=1, hour=8, minute=0)

scheduler.start()

print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))

try:

# This is here to simulate application activity (which keeps the main thread alive).

while True:

time.sleep(2) #其他任务是独立的线程执行

except (KeyboardInterrupt, SystemExit):

# Not strictly necessary if daemonic mode is enabled but should be done if possible

scheduler.shutdown()

print('Exit The Job!')

三、后台运行定时任务

# 假设没有使用虚拟环境

nohup python task_manage.py &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值