如何安排生产python脚本以触发函数在每天的指定时间运行
Posted
技术标签:
【中文标题】如何安排生产python脚本以触发函数在每天的指定时间运行【英文标题】:How to schedule a production python script to trigger a function to run at a specified time every Day 【发布时间】:2022-01-22 07:58:33 【问题描述】:我正在尝试安排一个 python 脚本(函数)从数据库(源数据库)中获取数据并将它们转储到 S3 存储桶(目标数据库)中。这将在生产中使用,我想要一个触发该作业在每天特定时间运行而无需人工干预的时间表。请问我该怎么做。
我已经尝试使用下面的示例代码,如果我的电脑关闭,这往往会停止,并且当我再次运行代码时可能会重新启动,这不是我想要的。
"""
Demonstrates how to use the blocking scheduler to schedule a job that executes on 3 second
intervals.
"""
from datetime import datetime
import os
from apscheduler.schedulers.blocking import BlockingScheduler
def tick():
print('Tick! The time is: %s' % datetime.now())
if __name__ == '__main__':
scheduler = BlockingScheduler()
scheduler.add_job(tick, 'interval', seconds=3)
print('Press Ctrl+0 to exit'.format('Break' if os.name == 'nt' else 'C'))
try:
scheduler.start()
except (KeyboardInterrupt, SystemExit):
pass
【问题讨论】:
【参考方案1】:您是否需要此脚本在 Windows 上运行或使用少于一分钟的时间间隔?如果没有,那么设置 cron 作业 以便在需要时调用您的脚本会更容易。然后脚本只包含任务本身:
#!/usr/bin/env python3
from datetime import datetime
if __name__ == '__main__':
print('Tick! The time is: %s' % datetime.now())
【讨论】:
“cron 作业”是一个 Unix 术语。在 Windows 中,您将搜索“计划任务”或“任务计划程序” 是的,我希望在 Windows 上实现它。以上是关于如何安排生产python脚本以触发函数在每天的指定时间运行的主要内容,如果未能解决你的问题,请参考以下文章
生产经理如何自我驱动,从而落实每天工作安排,最终达成生产效率提升?