Python运算符中的空气流宏

编程入门 行业动态 更新时间:2024-10-14 12:20:37
本文介绍了Python运算符中的空气流宏的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正尝试在我的Python操作符中使用Airflow宏,但我一直收到"Airflow:Error:UnRecognition Arguments:"

所以我正在导入一个有3个位置参数的函数:(sys.argv,start_date,end_date),我希望将start_date和end_date作为Airflow中的执行日期。

函数参数如下所示

def main(argv,start_date,end_date):

以下是我在DAG中的任务:

t1 = PythonOperator( task_id='Pull_DCM_Report', provide_context=True, python_callable=main, op_args=[sys.argv,'{{ ds }}','{{ ds }}'], dag=dag) 推荐答案

由于您传递的是需要由气流呈现的日期,因此您需要在Python操作符中使用templates_dict参数。此字段是Airflow将唯一识别为包含模板的字段。

您可以通过复制现有运算符并将相关字段添加到template_fields元组中,创建将更多字段识别为模板的自定义Python运算符。

def main(**kwargs): argv = kwargs.get('templates_dict').get('argv') start_date = kwargs.get('templates_dict').get('start_date') end_date = kwargs.get('templates_dict').get('end_date') t1 = PythonOperator(task_id='Pull_DCM_Report', provide_context=True, python_callable=main, templates_dict={'argv': sys.argv, 'start_date': '{{ yesterday_ds }}', 'end_date': '{{ ds }}'}, dag=dag)

更多推荐

Python运算符中的空气流宏

本文发布于:2023-11-24 12:34:37,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1625222.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:气流   运算符   Python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!