Используя расписание модуля, запускайте расписание немедленно, а затем каждый час - PullRequest
0 голосов
/ 21 февраля 2020

Я пытаюсь запланировать задачу с помощью модуля «расписание» на каждый час. Моя проблема в том, что мне нужно, чтобы задача сначала выполнялась, а затем запускалась снова каждый час.

Этот код работает нормально, но он ждет час до первоначального запуска

import schedule
import time

def job():
    print("This happens every hour")

schedule.every().hour.do(job)

while True:
    schedule.run_pending()

Я хотел бы избежать этого :

import schedule
import time

def job():
    print("This happens immediately then every hour")

schedule.every().hour.do(job)

while i == 0: 
    job()
    i = i+1

while i == 1:
    schedule.run_pending()

В идеале было бы неплохо иметь такую ​​опцию:

schedule.run_pending_now()

1 Ответ

0 голосов
/ 21 февраля 2020

Вероятно, самое простое решение состоит в том, чтобы просто запустить его немедленно и запланировать его, например, с помощью:

import schedule
import time

def job():
    print("This happens every hour")

schedule.every().hour.do(job)

job()                       # Runs now.
while True:
    schedule.run_pending()  # Runs every hour, starting one hour from now.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...