文章内容
2019/1/15 16:20:45,作 者: 黄兵
Python任务调度模块APScheduler
最近需要定时执行任务,可以这样写:
while True:
# 具体实现功能代码
time.sleep(5)这样写没什么问题,但是存在一个问题,如果有多个函数或者事件就处理起来很麻烦,定时执行也无能为力。
这样就需要第三方库来作为支持。
研究了一下,可以使用APScheduler和schedule还有Celery都可以实现这些功能,APScheduler和schedule功能都差不多,具体可以看下面的参考资料。
多说无意,开始上代码:
if __name__ == '__main__':
# 实例化一个调度器
scheduler = BlockingScheduler()
scale_ip = Anti_Web_Scraping()
clean_counter = Save_Redis_Original_Data()
# 添加任务并设置触发方式为2小时执行一次
scheduler.add_job(scale_ip.get_counter, 'interval', seconds=7200)
# 每天6:00执行
scheduler.add_job(clean_counter.clean_counters, 'cron', hour=6, minute=00)
# 开始运行调度器
scheduler.start()这样就可以同时满足两个条件了,一个是间隔时间执行,一个是定时执行。
具体代码含义下面的参考资料都有详细的介绍,在此不多说。
有问题欢迎大家下面留言。
参考资料:
APScheduler :Python任务调度模块APScheduler
schedule:python任务调度之schedule
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - Python任务调度模块APScheduler
评论列表