2017-09-29 4 views

Antwort

3

meines Wissens, könnte dies nicht nur getan werden, mit crontab

erste, machen Sie Ihre Aufgabe laufen jeden Sonntag Nacht:

crontab(minute=0, hour=0, day_of_week='sunday') 

dann, in der Task-Funktion, prüfen Sie, ob die Woche Nummer ist gerade, wenn ja, nichts tun:

from datetime import datetime 

week_number = int(datetime.today().strftime("%U"))  
if week_number % 2 == 0: 
    return 
+0

Noch eine Frage, was könnte der Grund für die Aufgabe, mehrmals ausgeführt werden ?? Ich setze es auf die Minute, aber es wird hunderte Male ausgeführt – Ken

+0

@Ken Ich fürchte, ich muss einen Blick auf Ihre Einstellung. – georgexsh

+0

' CELERY_TASK_ALWAYS_EAGER = False CELERY_BROKER_URL = os.environ.get ('REDIS_URL') CELERY_RESULT_BACKEND = os.environ.get ('REDIS_URL') CELERY_ACCEPT_CONTENT = [ 'application/json'] CELERY_TASK_SERIALIZER = 'json' CELERY_RESULT_SERIALIZER = 'json' CELERY_ENABLE_UTC = Falsch CELERY_TIMEZONE = TIME_ZONE ' – Ken

Verwandte Themen