一、常用五大参数
minute:分钟,范围0-59;
hour:小时,范围0-23;
day_of_week:星期几,范围0-6。以星期天为开始,即0为星期天。这个星期几还可以使用英文缩写表示,例如"sun"表示星期天;
day_of_month:每月第几号,范围1-31;
month_of_year:月份,范围1-12。
二、简单定时任务实例
1、crontab只能执行最小单位分的定时任务
from celery.schedules import crontab
# 声明定时任务
app.conf.beat_schedule = {
u'feiyanapp_tasks_send_emails': { # 任务名,可以自定义
"task": "feiyanapp.tasks.send_emails", # 任务函数所在位置
# 定时每月15-25号,周一至周五,早上9点10分发送邮件
"schedule": crontab(minute='10', hour='9', day_of_week='1-5', day_of_month='15-25')
}
}
2、想执行秒为单位的任务,需要使用datetime中的模块timedelta
from datetime import timedelta
# 声明定时任务
app.conf.beat_schedule = {
u'feiyanapp_tasks_send_emails': { # 任务名,可以自定义
"task": "feiyanapp.tasks.send_emails", # 任务函数所在位置
"schedule": timedelta(seconds=1), # 定时每秒执行一次
}
}