Аналогично этот вопрос Я хочу извлечь информацию о триггере задания cron из APScheduler.Однако мне нужно поле "day_of_week", а не все.Используя
for job in scheduler.get_jobs():
for f in job.trigger.fields:
print(f.name + " " + str(f))
, я могу видеть все поля, например, week,hour,day_of_week
, но
job.trigger.day_of_week
, похоже, не является атрибутом объекта "CronTrigger".Я не понимаю, что это за объект job.trigger
и как упакованы его поля.Я попытался прочитать код на github, но он еще более озадачивает.
Как извлечь только одно поле day_of_week
и как структурирован этот класс триггера?
Дайвинг глубжеЯ обнаружил, что
apscheduler.triggers.cron.fields.DayOfWeekField
я могу найти, проиндексировав job.trigger.fields[4]
, который кажется действительно плохим стилем, поскольку он зависит от «положения» поля.То, что я получаю, это DayOfWeekField, из которого я комично не могу получить его значение:
a.get_value
<bound method DayOfWeekField.get_value of DayOfWeekField('day_of_week', '1,2,3,4')>
Структура полей закодирована здесь , но я не знаючто делать с dateval, аргументом get_value()
.
В конце концов, после надежды на понимание концепции, я хочу сделать
if job-day_of_week contains mon
if job-day_of_week == '*'
print ( job-day_of_week )
Я благодарен за любые предложения / подсказки!