Začněte nyníZačněte zdarma

Dekorace tasku

Rozhodl/a ses implementovat konkrétní Airflow task v Pythonu. Tento task má za úkol stáhnout soubor a uložit ho do systému v rámci Airflow – k tomu slouží funkce pull_file, která je pro tebe již připravená.

Knihovna requests je naimportovaná, stejně jako objekt Airflow dagu.

Toto cvičení je součástí kurzu

Úvod do Apache Airflow v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Naimportuj potřebný objekt z knihovny Airflow.
  • Nastav funkci pull_file jako Airflow task.
  • Zavolej objekt tasku.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód