from fastapi import FastAPI from contextlib import asynccontextmanager from database import Base, engine from routes import router from apscheduler.schedulers.background import BackgroundScheduler from webscrapper import search_from_keywords_file # Crear las tablas en MySQL si no existen Base.metadata.create_all(bind=engine) # Configurar el scheduler scheduler = BackgroundScheduler() scheduler.add_job(search_from_keywords_file, "cron", hour=1, minute=0) #Ejecutar a las 01:00 @asynccontextmanager async def lifespan(app: FastAPI): scheduler.start() yield scheduler.shutdown() # Inicializar FastAPI con lifespan app = FastAPI(lifespan=lifespan) # Incluir rutas app.include_router(router)