Как использовать apscheduler для запуска задания в определенное время?

Я использую модуль python apscheduler для запуска задания через нерегулярные промежутки времени, например, в 1:30 и 23:10 каждый день, но не могу найти решение для этого.

Не могли бы вы помочь мне, как это сделать. Я не хочу создавать два задания, одно на 1:30 и 23:10. По крайней мере, дайте мне знать, как это сделать с crontab, чтобы я сделал то же самое с apscheduler. Спасибо.

Я прошел по этой ссылке https://apscheduler.readthedocs.io/en/v2.1.2/cronschedule.html#available-fields, но не понимаю, как это сделать.


person user2753523    schedule 12.12.2017    source источник
comment
Почему вы не хотите создать два рабочих места? Что с этим не так?   -  person Sraw    schedule 12.12.2017
comment
обслуживание будет проблемой. Например, если пользователь хочет остановиться, он должен остановить два задания. Учтите, что если есть 10 нерегулярных интервалов, это будет большой проблемой, а также проблемой отслеживания состояния каждого задания.   -  person user2753523    schedule 12.12.2017


Ответы (1)


APScheduler 3.5.0, который должен быть выпущен в ближайшее время, должен охватывать этот случай:

from apscheduler.triggers.multi import OrTrigger

trigger = OrTrigger([CronTrigger(hour=1, minute=30), CronTrigger(hour=23, minute=10)]
scheduler.add_job(yourfunc, trigger)
person Alex Grönholm    schedule 14.12.2017
comment
Обновление: from apscheduler.triggers.combining import OrTrigger - person Bob; 30.01.2021