Python
45 ~40 dk
Proje: Hava Durumu Uygulaması
Hava Durumu Uygulaması
import requests
class HavaDurumu:
def __init__(self):
self.base_url = "https://wttr.in"
def getir(self, sehir):
try:
r = requests.get(f"{self.base_url}/{sehir}?format=j1", timeout=5)
veri = r.json()
guncel = veri["current_condition"][0]
return {
"sehir": sehir,
"sicaklik": guncel["temp_C"],
"nem": guncel["humidity"],
"ruzgar": guncel["windspeedKmph"],
"durum": guncel["weatherDesc"][0]["value"],
}
except Exception as e:
return {"hata": str(e)}
def goster(self, sehir):
veri = self.getir(sehir)
if "hata" in veri:
print(f"❌ Hata: {veri['hata']}")
return
print(f"\n🌍 {veri['sehir'].upper()}")
print(f"🌡️ Sıcaklık: {veri['sicaklik']}°C")
print(f"💧 Nem: %{veri['nem']}")
print(f"💨 Rüzgar: {veri['ruzgar']} km/h")
print(f"☁️ Durum: {veri['durum']}")
hava = HavaDurumu()
while True:
sehir = input("\nŞehir (çıkmak için 'q'): ")
if sehir.lower() == 'q':
break
hava.goster(sehir)>>> python hava.py
Şehir: Antalya
🌍 ANTALYA
🌡️ Sıcaklık: 28°C
💧 Nem: %65
💨 Rüzgar: 12 km/h
☁️ Durum: Partly cloudy✅ Bu proje şunları kapsar: API kullanımı, OOP, hata yakalama, kullanıcı arayüzü, JSON işleme.