當(dāng)然可以!Python中有幾個(gè)庫可以用來創(chuàng)建定時(shí)任務(wù),其中最常用的是schedule
和APScheduler
。
schedule
是一個(gè)簡單易用的庫,可以用來安排函數(shù)在特定的時(shí)間執(zhí)行。它的基本用法如下:
import schedule
import time
def job():
print("I'm working...")
# 每隔10秒執(zhí)行一次job函數(shù)
schedule.every(10).seconds.do(job)
while True:
schedule.run_pending()
time.sleep(1)
APScheduler
則是一個(gè)功能更強(qiáng)大的庫,支持更多的調(diào)度策略,如每天、每周、每月等。它的基本用法如下:
from apscheduler.schedulers.background import BackgroundScheduler
def job():
print("I'm working...")
# 創(chuàng)建一個(gè)后臺(tái)調(diào)度器
scheduler = BackgroundScheduler()
# 添加一個(gè)定時(shí)任務(wù),每天上午8點(diǎn)執(zhí)行job函數(shù)
scheduler.add_job(job, 'cron', hour=8, minute=0)
# 啟動(dòng)調(diào)度器
scheduler.start()
# 等待程序結(jié)束
try:
while True:
time.sleep(1)
except (KeyboardInterrupt, SystemExit):
# 關(guān)閉調(diào)度器
scheduler.shutdown()
這兩個(gè)庫都可以滿足大部分定時(shí)任務(wù)的需求,你可以根據(jù)自己的需求選擇合適的庫來使用。如果你需要更復(fù)雜的調(diào)度策略,還可以考慮使用Celery
等分布式任務(wù)隊(duì)列。