scheduler和apscheduler比较

2022-05-12  本文已影响0人  深圳都这么冷

为了执行定时任务
调研了一下python的scheduler和apscheduler

1. scheduler

demo代码

import schedule
import time

def job():
    print("I'm working...")

schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
schedule.every().monday.do(job)
schedule.every().wednesday.at("13:15").do(job)
schedule.every().minute.at(":17").do(job)

while True:
    schedule.run_pending()
    time.sleep(1)

下面这个while True sleep是不是很傻掉,不够优雅,弃之不用

2. apscheduler

demo代码

from time import time
from apscheduler.schedulers.blocking import BlockingScheduler

sched = BlockingScheduler()


def prompt():
    print(f"{int(time())} every 2 seconds...")


def prompt2():
    print(f"{int(time())} every 5 seconds...")


sched.add_job(prompt, 'interval', seconds=2)
sched.add_job(prompt2, 'interval', seconds=5)

if __name__ == '__main__':
    sched.start()

这个稍微好看一点,但是add_job的语法没有schedule灵活。难以抉择!

上一篇 下一篇

猜你喜欢

热点阅读