2013-03-01 3 views
2

Я пытаюсь сделать что-то действительно сложное. Используя ящик Windows, я пытаюсь запустить скрипт каждые полчаса, пн-пт, с 9:00 до 19:00, пропуская определенные даты, которые я определяю как «праздники». Мне бы очень хотелось, чтобы Python запускал этот скрипт. Я просмотрел «apschedule», но, похоже, не могу найти правильные варианты, которые мне нужно сделать. Если вы не можете это сделать через Python, на какие другие решения я могу смотреть?python script расширенное расписание

Кстати, на данный момент я запускаю Python 3.3, но я желаю понизить, если необходимо.

ответ

2

украсить вашу работу-функции, чтобы пропустить специальные дни:

from datetime import date 

def not_on(dates): 
    def noop(): pass 
    def decor(fn): 
     if date.today() in dates: 
      return noop 
     else: 
      return fn 
    return decor 


@not_on((date(2013, 03, 01),)) 
def job(): 
    print "yeah" 

затем просто планировать свои рабочие места для обычных дат и сделано. если задание вызывается в особый день, декоратор просто пропустит выполнение.

просто продолжайте использовать apscheduler.

+0

Могу ли я использовать тот же скрипт, чтобы он запускался только в рабочее время? – Weremole79

+0

уверен, просто украсьте его вторым декоратором: '@ business_hours' выглядит красиво. вы можете складывать их вместе. – akira