首页 > 解决方案 > 如何获取气流日期中的执行日期作为变量?

问题描述

我希望能够通过运行回填来测试 DAG 行为。我有一个 BranchPythonOperator,它使用 dag 运行的日期来决定去哪个分支。

我用

日期时间.今天()

但我正在寻找的是执行日期

today = datetime.today()

def check_working_day(today, **kwargs):
    cal = France()
    print(today)
    if (cal.is_working_day(today)):
        return "is_file_available"
    else:
        return "not_holiday"

今天 = datetime.today()

应该是这样的

今天 = execution_date_of_the_dag

标签: pythonairflow

解决方案


您正在寻找dsexecution_date在 **kwargs 中可用。查看宏参考PythonOperator 文档。

这应该有效:

def check_working_day(execution_date, **kwargs):
    cal = France()
    print(execution_date)
    if (cal.is_working_day(execution_date)):
        return "is_file_available"
    else:
        return "not_holiday"

您只需要确保您的 PythonOperator 已设置provide_context=True.


推荐阅读