diff --git a/utils/pogoda.py b/utils/pogoda.py index 9959184..1a5fc93 100644 --- a/utils/pogoda.py +++ b/utils/pogoda.py @@ -90,39 +90,41 @@ async def fetch_open_meteo( return None +_WMO_MAPPING: dict[int, str] = { + 0: "Ясно", + 1: "Ясно", + 2: "Переменная облачность", + 3: "Пасмурно", + 45: "Туман", + 48: "Туман", + 51: "Лёгкая морось", + 53: "Морось", + 55: "Сильная морось", + 56: "Ледяная морось", + 57: "Сильная ледяная морось", + 61: "Небольшой дождь", + 63: "Дождь", + 65: "Сильный дождь", + 66: "Ледяной дождь", + 67: "Сильный ледяной дождь", + 71: "Небольшой снег", + 73: "Снег", + 75: "Сильный снег", + 77: "Снежная крупа", + 80: "Небольшой ливень", + 81: "Ливень", + 82: "Сильный ливень", + 85: "Снежный ливень", + 86: "Сильный снежный ливень", + 95: "Гроза", + 96: "Гроза с градом", + 99: "Сильная гроза с градом", +} + + def wmo_to_russian(code: Optional[int]) -> str: """Перевод WMO weather code в русский.""" - mapping = { - 0: "Ясно", - 1: "Ясно", - 2: "Переменная облачность", - 3: "Пасмурно", - 45: "Туман", - 48: "Туман", - 51: "Лёгкая морось", - 53: "Морось", - 55: "Сильная морось", - 56: "Ледяная морось", - 57: "Сильная ледяная морось", - 61: "Небольшой дождь", - 63: "Дождь", - 65: "Сильный дождь", - 66: "Ледяной дождь", - 67: "Сильный ледяной дождь", - 71: "Небольшой снег", - 73: "Снег", - 75: "Сильный снег", - 77: "Снежная крупа", - 80: "Небольшой ливень", - 81: "Ливень", - 82: "Сильный ливень", - 85: "Снежный ливень", - 86: "Сильный снежный ливень", - 95: "Гроза", - 96: "Гроза с градом", - 99: "Сильная гроза с градом", - } - return mapping.get(code, "Неизвестно") + return _WMO_MAPPING.get(code, "Неизвестно") _WEATHER_MAPPING = [