НачатьНачать бесплатно

Создание задачи с помощью декоратора

Вы решили реализовать конкретную задачу Airflow на Python. Эта задача должна загружать файл и сохранять его в системе в рамках Airflow — с помощью функции pull_file. Функция уже определена за вас.

Библиотека requests и объект dag Airflow уже импортированы.

Это упражнение является частью курса

Введение в Apache Airflow на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте необходимый объект из библиотеки Airflow.
  • Настройте функцию pull_file как задачу Airflow.
  • Вызовите объект задачи.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import the task decorator
from ____ import ____

@dag(dag_id='file_update')
def file_update():
  # Decorate the function as a task
  ____
  def pull_file(URL, savepath):
    r = requests.get(URL)
    with open(savepath, 'wb') as f:
      f.write(r.content)   
    print(f"File pulled from {URL} and saved to {savepath}")
  # Call the task
  ____('http://dataserver/sales.json', 'latestsales.json')

file_update()
Редактировать и запускать код