from apscheduler.schedulers.blocking import BlockingScheduler from parser import fetch_schedule from db import init_db, save_schedule from datetime import date def daily_job(): # Створюємо таблиці, якщо їх нема init_db() # Парсимо обидва напрямки: tab=1 (Київ→Ніжин), tab=2 (Ніжин→Київ) for tab in (1, 2): entries = fetch_schedule(tab=tab, use_local=False) print(f"DEBUG: Напрямок tab={tab}, знайдено {len(entries)} поїздів") save_schedule(entries) print(f"DEBUG: Збережено {len(entries)} поїздів для tab={tab}") print(f"{date.today().isoformat()}: Розклад обох напрямків оновлено.") if __name__ == '__main__': sched = BlockingScheduler(timezone='Europe/Kyiv') sched.add_job(daily_job, 'cron', hour=5, minute=0) # Одноразове оновлення при старті daily_job() # Старт планувальника sched.start()