import aiohttp from ProjectsFiles import weather_api_key # Настройки экспорта в модули __all__ = ("get_weather",) async def get_weather(message, *args) -> str: # Извлекаем город из сообщения command_parts = message.text.split(maxsplit=1) print(command_parts[1]) if len(command_parts) > 1: city = command_parts[1] else: return "Пожалуйста, укажите город." # Обработка города city = city.lower().capitalize() # URL для запроса к API url = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={weather_api_key}&units=metric&lang=ru" try: async with aiohttp.ClientSession() as session: async with session.get(url) as response: data = await response.json() if data["cod"] != 200: return "Город не найден. Попробуйте еще раз." weather = data["weather"][0]["description"] temp = data["main"]["temp"] humidity = data["main"]["humidity"] wind = data["wind"]["speed"] weather_today: str = (f"Погода {city}\n" f"☁️Погода: {weather}\n" f"🌡Температура: {temp}°C\n" f"💧Влажность: {humidity}%\n" f"💨Скорость ветра: {wind} м/с") await message.answer(weather_today) return weather_today except Exception as e: return f"Произошла ошибка при получении данных о погоде: {str(e)}"