BaşlayınÜcretsiz başlayın

Bir görevi dekore etmek

Belirli bir Airflow görevini Python kullanarak uygulamaya karar verdin. Bu görev, Airflow içinde pull_file fonksiyonunu kullanarak bir dosyayı indirip sisteme kaydetmeli. Bu fonksiyon senin için zaten tanımlı.

requests kütüphanesi ve Airflow dag nesnesi senin için içe aktarıldı.

Bu egzersiz, kursun bir parçasıdır

Python ile Apache Airflow’a Giriş

Kursa Göz Atın

Egzersiz talimatları

  • Gerekli nesneyi Airflow kütüphanesinden içe aktar.
  • pull_file fonksiyonunu bir Airflow görevi olacak şekilde yapılandır.
  • Görev nesnesini çağır.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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()
Kodu Düzenle ve Çalıştır