MulaiMulai sekarang secara gratis

Mendekorasi sebuah tugas

Anda memutuskan untuk mengimplementasikan sebuah tugas Airflow khusus menggunakan Python. Tugas ini perlu mengunduh dan menyimpan sebuah file ke sistem di dalam Airflow, menggunakan fungsi pull_file. Fungsi ini sudah disediakan untuk Anda.

Pustaka requests sudah diimpor untuk Anda, begitu juga objek dag Airflow.

Latihan ini adalah bagian dari kursus

Pengantar Apache Airflow dengan Python

Lihat Kursus

Petunjuk latihan

  • Impor objek yang diperlukan dari pustaka Airflow.
  • Konfigurasikan fungsi pull_file agar menjadi tugas Airflow.
  • Panggil objek tugas tersebut.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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()
Edit dan Jalankan Kode