python -- schedule

schedule

schedule是一个轻量级的定时任务调度的第三方库,可以完成以分钟,小时,天,周几和特定日期的定时任务。

 

一、下载安装

pip install schedule

 

二、示例

1、官网示例:

import schedule
import time


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


def job_1(arg):
    print("I'm working...%s" % arg)

schedule.every(10).minutes.do(job)  # 每隔十分钟执行一次任务
schedule.every().hour.do(job)   # 每隔一小时执行一次任务
schedule.every().day.at("10:30").do(job)  # 每天的10:30执行一次任务
schedule.every(5).to(10).days.do(job)  # 每隔5到10天执行一次任务
schedule.every().monday.do(job)  # 每周一执行一次任务
schedule.every().wednesday.at("13:15").do(job_1, "args")  # 每周三13:15执行一次任务, 且任务带有参数

while True:
    schedule.run_pending()  # 运行所有的任务
    time.sleep(1)

 

2、示例扩展:  

import datetime
import schedule
import time
import threading


def job1():
    print("I'm working for job1")
    time.sleep(2)
    print("job1:", datetime.datetime.now())


def job2():
    print("I'm working for job2")
    print("job2:", datetime.datetime.now())


if __name__ == "__main__":
    # 任务是串行执行,顺序从上往下依次执行,下面任务需要等待上面任务执行完毕才可以执行。
    schedule.every(10).seconds.do(job1)
    schedule.every(10).seconds.do(job2)
    # 通过线程可以避免这个问题
    # schedule.every(10).seconds.do(threading.Thread(target=job1).start())
    # schedule.every(10).seconds.do(threading.Thread(target=job2).start())
    while True:
        schedule.run_pending()
        time.sleep(1)

  

 

posted @ 2019-03-22 11:03  Wilson_Blogs  阅读(466)  评论(0)    收藏  举报