1、如需一日调度多次任务
eg:每天 8:40 ,12:40 , 16:40 ,20:40 每隔4小时执行
schedule_interval=‘40 08-20/4 * * *’
2、若一日执行的时间没有规律
eg:执行的时间分别为8:40 ,13:40 , 17:40
from datetime import datetime, timedelta
from airflow import DAG
from airflow.operators.python_operator import PythonOperator
# 定义任务逻辑
def my_task():
# 这里放置你的任务逻辑代码
print("任务执行")
# 定义DAG
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2022, 1, 1),
'retries': 1,
'retry_delay': timedelta(minutes=5),
}
dag = DAG('my_dag', default_args=default_args, schedule_interval=timedelta(days=1))
# 定义三个任务,分别对应8:40、13:40和17:40
task1 = PythonOperator(
task_id='task1',
python_callable=my_task,
dag=dag,
schedule_interval="40 8 * * *"
)
task2 = PythonOperator(
task_id='task2',
python_callable=my_task,
dag=dag,
schedule_interval="40 13 * * *"
)
task3 = PythonOperator(
task_id='task3',
python_callable=my_task,
dag=dag,
schedule_interval="40 17 * * *"
)
# 设置任务之间的依赖关系
task1 >> task2 >> task3