這篇文章主要介紹“python包之APScheduler定時任務怎么實現”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“python包之APScheduler定時任務怎么實現”文章能幫助大家解決問題。
pip install apscheduler
新建一個scheduler調度器
添加一個job store調度任務
運行調度任務
import datetime
from apscheduler.schedulers.blocking import BlockingScheduler
def task(name):
print('%s告訴你現在時間是:%s' . format(name, datetime.datetime.now()))
# 該任務將會在2022-05-20 13:14:52執行一次
scheduler = BlockingScheduler()
scheduler.add_job(task, 'date', run_date=datetime.datetime(2022, 5, 20, 13, 14, 52), args=['autofelix'], id='task')
scheduler.start()當你調度作業的時候,你需要為這個作業選擇一個觸發器,用來描述這個作業何時被觸發
date 一次性指定日期
interval 在某個時間范圍內間隔多長時間執行一次
from apscheduler.schedulers.blocking import BlockingScheduler
def task():
print('我是飛兔小哥')
# 每隔10秒數執行一次
scheduler = BlockingScheduler()
scheduler.add_job(task, 'interval', seconds=10, id='task')
scheduler.start()cron 和Linux crontab格式兼容,最為強大
from apscheduler.schedulers.blocking import BlockingScheduler
f = open('status.text', 'a', encoding='utf8')
sc = BlockingScheduler()
@sc.scheduled_job('cron', day_of_week='*', hour=1, minute='30', second='50')
if name == '__main__':
try:
sc.start()
f.write('定時任務成功執行')
except Exception as e:
sc.shutdown()
f.write('定時任務執行失敗')
finally:
f.close()/2:每隔2分鐘執行一次
/1:每隔1分鐘執行一次
from apscheduler.schedulers.blocking import BlockingScheduler
def task():
print('你的任務每隔2分鐘執行一次')
scheduler = BlockingScheduler()
scheduler.add_job(job1, 'cron', minute="/2", id='task')
scheduler.start()jitter:代表可以上下浮動的秒數
from apscheduler.schedulers.blocking import BlockingScheduler
def task():
print('你的任務每隔1小時執行一次')
scheduler = BlockingScheduler()
scheduler.add_job(task, 'interval', hours=1, id='task')
# scheduler.add_job(task, 'interval', hours=1, id='task', jitter=120)
scheduler.start()BlockingScheduler : 當調度器是你應用中唯一要運行的東西時
BackgroundScheduler : 當你沒有運行任何其他框架并希望調度器在你應用的后臺執行時使用(充電樁即使用此種方式)
AsyncIOScheduler : 當你的程序使用了asyncio(一個異步框架)的時候使用
GeventScheduler : 當你的程序使用了gevent(高性能的Python并發框架)的時候使用
TornadoScheduler : 當你的程序基于Tornado(一個web框架)的時候使用
TwistedScheduler : 當你的程序使用了Twisted(一個異步框架)的時候使用
QtScheduler : 如果你的應用是一個Qt應用的時候可以使用
關于“python包之APScheduler定時任務怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。