Debate

APScheduler Kullanımı

Iniciado por ASENA · 28 jul 2026 05:06 · 2 Visitas · 0 Respuestas
Autor del tema #0
APScheduler, Python tabanlı bir zamanlama kütüphanesidir ve zamanlanmış görevleri kolayca yönetmenizi sağlar. Bu kütüphane, belirli bir zaman diliminde veya belirli aralıklarla görevlerinizi çalıştırmak için idealdir. Genellikle web uygulamaları ve arka plan işlerinde kullanılır.

APScheduler, üç ana bileşenden oluşur: Job Stores, Executors ve Schedulers.

  • Job Stores: Görevlerinizi depolamak için kullanılır. Farklı veri kaynaklarıyla (örneğin, SQLite, MongoDB) entegre edilebilir.
  • Executors: Görevlerin nasıl çalıştırılacağını belirler. Örneğin, görevlerin aynı anda mı yoksa sırayla mı çalıştırılacağını belirlemek için kullanılır.
  • Schedulers: Görevlerin zamanlamasını yönetir. Belirli bir zaman diliminde veya belirli aralıklarla görevleri çalıştırmak için kullanılır.

APScheduler kullanmanın temel adımlarını inceleyelim. Öncelikle, kütüphaneyi yüklemek için aşağıdaki komutu kullanabilirsiniz:

CODE
1pip install APScheduler


Kurulum tamamlandıktan sonra, basit bir örnekle başlayalım:

CODE
123456789101112131415from apscheduler.schedulers.background import BackgroundScheduler
import time

def my_job():
    print("Görev çalışıyor...")

scheduler = BackgroundScheduler()
scheduler.add_job(my_job, 'interval', seconds=5)  # Her 5 saniyede bir görev çalışacak
scheduler.start()

try:
    while True:
        time.sleep(1)
except (KeyboardInterrupt, SystemExit):
    scheduler.shutdown()


Bu örnekte, my_job adında basit bir fonksiyon tanımladık. Bu fonksiyon her 5 saniyede bir çalışacak şekilde zamanlanmıştır.

APScheduler, ayrıca daha karmaşık zamanlama seçenekleri sunar. Örneğin, belirli bir gün ve saatte görev çalıştırmak için cron ifadelerini kullanabilirsiniz. Örnek bir cron ifadesi:

CODE
1scheduler.add_job(my_job, 'cron', day_of_week='mon-fri', hour=10, minute=30)  # Her hafta pazartesi'den cumaya, sabah 10:30'da çalışacak


Sonuç olarak, APScheduler, Python uygulamalarında zamanlanmış görevleri yönetmek için güçlü bir araçtır. İhtiyaçlarınıza göre özelleştirilebilen birçok özellik sunar.

Debes haber iniciado sesión para responder.

0 citas seleccionadas