可以对JSON值进行字符串解析,并在Airflow Variables中使用JSON键。以下是一些示例代码,它们演示了如何实现此功能。
首先,我们将定义一些变量以供示例使用:
from airflow import models
VARIABLES = {
'dir_path': '/usr/local/var/',
'file_name': 'my_file.txt',
'json_key': 'my_key',
'json_value': '{"my_key": "my_value"}'
}
for key, value in VARIABLES.items():
models.Variable.set(key, value)
使用以下代码,我们可以解析JSON值并获取JSON键的值:
import json
from airflow import models
json_value_str = models.Variable.get('json_value')
json_value = json.loads(json_value_str)
json_key = models.Variable.get('json_key')
value = json_value[json_key]
print(f"Value for key '{json_key}' is '{value}'")
输出:
Value for key 'my_key' is 'my_value'
现在我们可以在Airflow变量中使用JSON键作为值:
from airflow import models
models.Variable.set('new_var', value)
print(models.Variable.get('new_var'))
输出:
my_value