ModernOSWeather/src/weather.py

31 lines
826 B
Python

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])
+ "&current="
+ weather_values
+ "&hourly="
+ weather_values
+ "&timezone="
+ timezone
+ "&forecast_days="
+ days
)
raw_data = urllib.request.urlopen(url, timeout=10).read()
return raw_data