forecasting-weather-project (Процессы и потоки)
Приложение написано в качестве учебного проекта.
Поставленная задача:
Проанализировать данные по погодным условиям, взяв их от API Яндекс Погоды.
1. Получить информацию о погодных условиях для указанного списка городов, используя API Яндекс Погоды.
Список городов находится в переменной `CITIES` в файле utils.py. Для взаимодействия с API использован класс `YandexWeatherAPI` в модуле `api_client.py`.
2. Вычислить среднюю температуру и проанализируйте информацию об осадках за указанный период для всех городов.
Условия и требования:
- период вычислений в течение дня — с 9 до 19 часов;
- средняя температура рассчитывается за указанный промежуток времени;
- сумма времени (часов), когда погода без осадков (без дождя, снега, града или грозы), рассчитывается за указанный промежуток времени;
- информация о температуре для указанного дня за определённый час находится по следующему пути: `forecasts> [день]> hours> temp`;
- информация об осадках для указанного дня за определённый час находится по следующему пути: `forecasts> [день]> hours> condition`.
3. Объединить полученные данные и сохраните результат в текстовом файле.
Формат сохраняемого файла - **csv**.
4. Проанализировать результат и сделать вывод, какой из городов наиболее благоприятен для поездки.
Наиболее благоприятным городом считать тот, в котором средняя температура за всё время была самой высокой, а количество времени без осадков — максимальным.
Если таких городов более одного, то выводить все.
Стек
- Python 3.10
Запуск
- Установите зависимости
poetry install
- Запустите файл forecasting.py
Тестирование
- Запустите файл api_test.py