es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿No se encuentra el ID de APScheduler?

¿Los trabajos programados por fecha pueden tener IDs? No sé qué estoy haciendo mal, pero cada vez que ejecuto este código, obtengo el error:

apscheduler.jobstores.base.JobLookupError: ‘No se encontró ningún trabajo con el ID de itemlastrun’

from apscheduler.schedulers.background import BackgroundScheduler
from datetime import datetime, timedelta

scheduler = BackgroundScheduler(timezone="America/New_York")

message = "test"
def display_message():
    print(message)
    scheduler.remove_job('item_last_run')

scheduler_date = datetime.now() + timedelta(seconds=3)

print(f"\n\n***********TRABAJO PROGRAMADO PARA {scheduler_date}")
scheduler.add_job(display_message, 'date', run_date=scheduler_date, id='item_last_run')
scheduler.start()
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, los trabajos programados pueden tener ID. De hecho, en el código proporcionado, al trabajo se le asigna el ID ‘item_last_run’ cuando se agrega al planificador utilizando la línea scheduler.add_job(display_message, 'date', run_date=scheduler_date, id='item_last_run').

    El mensaje de error sugiere que no hay ningún trabajo con el ID ‘item_last_run’ cuando se ejecuta la línea scheduler.remove_job('item_last_run'). Esto podría ser porque el trabajo ya ha sido eliminado o porque nunca se agregó correctamente en primer lugar. Vale la pena verificar que el trabajo se esté agregando y eliminando correctamente, y que el ID se esté utilizando de manera consistente en todo el código.

Comments are closed.