airflow.providers.standard.operators.weekday¶
類¶
根據當前日期將流程分發到兩個任務列表之一。 |
模組內容¶
- class airflow.providers.standard.operators.weekday.BranchDayOfWeekOperator(*, follow_task_ids_if_true, follow_task_ids_if_false, week_day, use_task_logical_date=False, **kwargs)[原始碼]¶
繼承自:
airflow.providers.standard.operators.branch.BaseBranchOperator根據當前日期將流程分發到兩個任務列表之一。
關於如何使用此運算元的更多資訊,請參閱指南:BranchDayOfWeekOperator
示例(包含單個日期)
from airflow.providers.standard.operators.empty import EmptyOperator from airflow.operators.weekday import BranchDayOfWeekOperator monday = EmptyOperator(task_id="monday") other_day = EmptyOperator(task_id="other_day") monday_check = BranchDayOfWeekOperator( task_id="monday_check", week_day="Monday", use_task_logical_date=True, follow_task_ids_if_true="monday", follow_task_ids_if_false="other_day", ) monday_check >> [monday, other_day]
示例(使用
WeekDay列舉)# import WeekDay Enum from airflow.providers.standard.utils.weekday import WeekDay from airflow.providers.standard.operators.empty import EmptyOperator from airflow.operators.weekday import BranchDayOfWeekOperator workday = EmptyOperator(task_id="workday") weekend = EmptyOperator(task_id="weekend") weekend_check = BranchDayOfWeekOperator( task_id="weekend_check", week_day={WeekDay.SATURDAY, WeekDay.SUNDAY}, use_task_logical_date=True, follow_task_ids_if_true="weekend", follow_task_ids_if_false="workday", ) # add downstream dependencies as you would do with any branch operator weekend_check >> [workday, weekend]
- 引數:
follow_task_ids_if_true (str | collections.abc.Iterable[str]) – 如果滿足條件,要執行的 task_id、task_group_id 或 task_id 和/或 task_group_id 的列表。
follow_task_ids_if_false (str | collections.abc.Iterable[str]) – 如果不滿足條件,要執行的 task_id、task_group_id 或 task_id 和/或 task_group_id 的列表。
week_day (str | collections.abc.Iterable[str] | airflow.providers.standard.utils.weekday.WeekDay | collections.abc.Iterable[airflow.providers.standard.utils.weekday.WeekDay]) –
要檢查的星期幾(全名)。也可以選擇使用集合提供一組日期。示例值:
"MONDAY",{"Saturday", "Sunday"}{WeekDay.TUESDAY}{WeekDay.SATURDAY, WeekDay.SUNDAY}
要使用 WeekDay 列舉,請從 airflow.utils.weekday 匯入它
use_task_logical_date (bool) – 如果為
True,則使用任務的邏輯日期與 is_today 進行比較。執行日期對於回填很有用。如果為False,則使用系統的星期幾。