from functools import cache import urllib.request @cache def weather_handler(date: str) -> dict: # print(date) # Request variables api_link = "https://api.open-meteo.com/v1/forecast?" coordinates = [48.712, 44.514] weather_values = "temperature_2m,precipitation_probability,relative_humidity_2m,rain,snowfall,weather_code,wind_speed_10m,wind_direction_10m" timezone = "Europe/Moscow" days = "7" url = ( api_link + "latitude=" + str(coordinates[0]) + "&longitude=" + str(coordinates[1]) + "¤t=" + weather_values + "&hourly=" + weather_values + "&timezone=" + timezone + "&forecast_days=" + days ) raw_data = urllib.request.urlopen(url, timeout=10).read() return raw_data