文章内容
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
评论列表