Initial commit

This commit is contained in:
2026-02-20 02:10:49 +01:00
commit c68c881f28
9 changed files with 275 additions and 0 deletions

71
api_test.py Executable file
View File

@@ -0,0 +1,71 @@
import requests
WMO_CODES = {
0: "Klarer Himmel",
1: "Hauptsächlich klar",
2: "Teils bewölkt",
3: "Bedeckt",
45: "Nebel",
48: "Ablagernder Rauhreifnebel",
51: "Leichter Nieselregen",
53: "Mäßiger Nieselregen",
55: "Dichter Nieselregen",
56: "Leichter gefrierender Nieselregen",
57: "Dichter gefrierender Nieselregen",
61: "Leichter Regen",
63: "Mäßiger Regen",
65: "Starker Regen",
66: "Leichter gefrierender Regen",
67: "Starker gefrierender Regen",
71: "Leichter Schneefall",
73: "Mäßiger Schneefall",
75: "Starker Schneefall",
77: "Schneegriesel", # Dein Code für morgen!
80: "Leichte Regenschauer",
81: "Mäßige Regenschauer",
82: "Starke Regenschauer",
85: "Leichte Schneeschauer",
86: "Starke Schneeschauer",
95: "Gewitter",
96: "Gewitter mit leichtem Hagel",
99: "Gewitter mit starkem Hagel"
}
def get_braunschweig_weather():
# Koordinaten für Braunschweig
url = "https://api.open-meteo.com/v1/forecast"
params = {
"latitude": 52.2659,
"longitude": 10.5267,
"daily": "temperature_2m_max,temperature_2m_min,weathercode",
"timezone": "Europe/Berlin",
"forecast_days": 3
}
try:
response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
print(f"Wettervorhersage für Braunschweig (nächste {params['forecast_days']} Tage):")
print("-" * 50)
daily = data['daily']
for i in range(len(daily['time'])):
date = daily['time'][i]
print(type(date))
max_temp = daily['temperature_2m_max'][i]
min_temp = daily['temperature_2m_min'][i]
# Ein einfacher Mapper für Wettercodes (WMO Standard)
code = daily['weathercode'][i]
print(f"Datum: {date} | Max: {max_temp}°C | Min: {min_temp}°C | Code: {WMO_CODES[code]}")
except Exception as e:
print(f"Fehler bei der Abfrage: {e}")
if __name__ == "__main__":
get_braunschweig_weather()