Python定时任务调度框架
Python+schedule编写的轻量级定时任务框架,支持按固定时间、间隔、每天每周执行任务,支持任务日志和异常处理,跨平台运行,是替代crontab和Windows任务计划的Python方案。
详细内容
import schedule, time, datetime
def backup():
print(f'{datetime.datetime.now()}: 执行备份任务')
# 这里写备份逻辑
def report():
print(f'{datetime.datetime.now()}: 生成日报')
# 这里写报表逻辑
# 每天凌晨2点备份
schedule.every().day.at('02:00').do(backup)
# 每小时执行一次
schedule.every().hour.do(report)
# 每周一早上9点
# schedule.every().monday.at('09:00').do(job)
print('定时任务已启动,按Ctrl+C停止')
while True:
schedule.run_pending()
time.sleep(60)
适配环境
依赖环境:Python 3.7+,需安装schedule
使用说明
1.安装Python 3.7+
2.pip install schedule
3.保存为scheduler.py
4.在代码中定义任务和时间
5.python scheduler.py 后台运行
支持每天/每周/间隔执行
可以添加多个任务
建议用nohup或systemd后台运行
任务异常不会影响其他任务
可以设置任务超时时间
2.pip install schedule
3.保存为scheduler.py
4.在代码中定义任务和时间
5.python scheduler.py 后台运行
支持每天/每周/间隔执行
可以添加多个任务
建议用nohup或systemd后台运行
任务异常不会影响其他任务
可以设置任务超时时间
常见问题
问:和crontab比有什么优势?
答:跨平台(Windows也能用),任务逻辑用Python写更灵活,有日志和异常处理
问:支持秒级调度吗?
答:支持,可以设置每几秒执行一次