Python | Biblioteca de horarios

El programa es un programador en proceso para trabajos periódicos que usan el patrón del generador para la configuración. Schedule le permite ejecutar funciones de Python (o cualquier otra llamada) periódicamente a intervalos predeterminados utilizando una sintaxis simple y fácil de usar.
Schedule Library se utiliza para programar una tarea a una hora particular todos los días o un día particular de la semana. También podemos establecer el tiempo en formato de 24 horas cuando se debe ejecutar una tarea. Básicamente, Schedule Library hace coincidir la hora de su sistema con la hora programada establecida por usted. Una vez que la hora programada y la hora del sistema coinciden, se llama a la función de trabajo (función de comando que está programada).

Instalación 

 $ pip install schedule  

horario.Clase del programador

  • schedule.every(interval=1) : llama a cada en la instancia del programador predeterminado. Programe un nuevo trabajo periódico.
  • schedule.run_pending() : llama a run_pending en la instancia del programador predeterminado. Ejecute todos los trabajos que están programados para ejecutarse.
  • schedule.run_all(delay_seconds=0) : llama a run_all en la instancia del programador predeterminado. Ejecute todos los trabajos independientemente de si están programados para ejecutarse o no.
  • schedule.idle_seconds() : llama a idle_seconds en la instancia del programador predeterminado.
  • schedule.next_run() : llama a next_run en la instancia del programador predeterminado. Fecha y hora en que debe ejecutarse el siguiente trabajo.
  • schedule.cancel_job(job): llama a cancel_job en la instancia del programador predeterminado. Eliminar un trabajo programado.

horario.Trabajo(intervalo, planificador=Ninguno) clase

Un trabajo periódico tal como lo utiliza Scheduler.
 

Parámetros:
intervalo: una cantidad de cierta unidad de tiempo 
planificador: la instancia del planificador con la que este trabajo se registrará una vez que se haya configurado completamente en Job.do().

Métodos básicos para Schedule.job
 

  • at(time_str) : Programe el trabajo todos los días a una hora específica. Llamar a esto solo es válido para trabajos programados para ejecutarse cada N día(s).
    Parámetros: time_str: una string en formato XX:YY. 
    Devoluciones: La instancia de trabajo invocada
  • do(job_func, *args, **kwargs) : especifica el job_func que debe llamarse cada vez que se ejecuta el trabajo. Cualquier argumento adicional se pasa a job_func cuando se ejecuta el trabajo.
    Parámetros: job_func: la función que se programará 
    . Devuelve: la instancia de trabajo invocada.
  • run() : Ejecuta el trabajo e inmediatamente reprogramalo. 
    Devoluciones: el valor devuelto por el job_func
  • to(latest) : programe el trabajo para que se ejecute en un intervalo irregular (aleatorizado). Por ejemplo, cada (A). a (B). segundos ejecuta la función de trabajo cada N segundos, de modo que A <= N <= B.

Veamos la implementación. 
 

Python

# Schedule Library imported
import schedule
import time
 
# Functions setup
def sudo_placement():
    print("Get ready for Sudo Placement at Geeksforgeeks")
 
def good_luck():
    print("Good Luck for Test")
 
def work():
    print("Study and work hard")
 
def bedtime():
    print("It is bed time go rest")
     
def geeks():
    print("Shaurya says Geeksforgeeks")
 
# Task scheduling
# After every 10mins geeks() is called.
schedule.every(10).minutes.do(geeks)
 
# After every hour geeks() is called.
schedule.every().hour.do(geeks)
 
# Every day at 12am or 00:00 time bedtime() is called.
schedule.every().day.at("00:00").do(bedtime)
 
# After every 5 to 10mins in between run work()
schedule.every(5).to(10).minutes.do(work)
 
# Every monday good_luck() is called
schedule.every().monday.do(good_luck)
 
# Every tuesday at 18:00 sudo_placement() is called
schedule.every().tuesday.at("18:00").do(sudo_placement)
 
# Loop so that the scheduling task
# keeps on running all time.
while True:
 
    # Checks whether a scheduled task
    # is pending to run or not
    schedule.run_pending()
    time.sleep(1)

  
Referencia: https://schedule.readthedocs.io/en/stable/
 

Publicación traducida automáticamente

Artículo escrito por shaurya uppal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *