python-schedule模塊(定時任務)基於官方文檔總結

一.模塊安裝

pip3 install schedulepython

官方文檔url

二.經常使用的使用案例

#基本格式
#建立方法
def func():
    print("方法")
    
#建立定時
schedule.every().seconds.do(func)  #每秒運行一次
#若是方法須要傳參的話do(func,參數1)


#開循環
while True:
    schedule.run_pending()
    
#若是值運行一次schedule.every().day.do(func).run()
  • schedule.every().seconds 每秒運行一次
  • schedule.every(2).seconds 每2秒運行一次
  • schedule.every(1).to(5).seconds 每1-5秒運行一次
  • schedule.every().minutes 每分鐘運行一次
  • schedule.every().hour 每小時運行一次
  • schedule.every().day 天天運行一次若是後面沒有at表示天天當前時間執行一次
  • schedule.every().day.at("00:00"). 天天凌晨運行一次
  • schedule.every().week每週凌晨運行一次
  • schedule.every().wednesday.at("00:00") 每週三凌晨運行一次
#週一到週日
monday
tuesday
wednesday
thursday
friday
saturday
sunday

#at一些技巧
at(HH:MM:SS)
at("00:00") 凌晨一點
every().hour.at(':30')  每小時30分
every().minute.at(':30') 沒分鐘30秒

#關於day與days以及week和weeks,monday與mondays等等等等
你能用day的地方必定能用days其餘也同樣
若是every()裏面值不爲1或者空時候必須用他複數

三.取消任務和取消指定任務

取消任務code

schedule.clear()

取消指定任務orm

#須要引入tap
def greet(name):
    print('Hello {}'.format(name))

schedule.every().day.do(greet, 'Andrea').tag('daily-tasks', 'friend')
schedule.every().hour.do(greet, 'John').tag('hourly-tasks', 'friend')
schedule.every().hour.do(greet, 'Monica').tag('hourly-tasks', 'customer')
schedule.every().day.do(greet, 'Derek').tag('daily-tasks', 'guest')

schedule.clear('daily-tasks') #q取消全部標籤爲daily-tasks的任務

四.如何讓任務值執行一次

就是在定義任務的時候加個returnip

相關文章
相關標籤/搜索