Это пример Telegram-бота, написанного с помощью aiogram-dialog. Бот позволяет пользователям получать текущую погоду по названию города. Поддерживает три способа запроса погоды: указание своего города и получение погоды в один клик, запрос погоды в любом другом городе и запрос погоды в случайном городе. Также можно просматривать историю своих запросов.
![quick_demonstration](https://private-user-images.githubusercontent.com/143875150/391075199-fc1b8e1b-bede-4f9c-8b52-8c4c92b33077.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5Mzg4NzksIm5iZiI6MTczODkzODU3OSwicGF0aCI6Ii8xNDM4NzUxNTAvMzkxMDc1MTk5LWZjMWI4ZTFiLWJlZGUtNGY5Yy04YjUyLThjNGM5MmIzMzA3Ny5naWY_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA3JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwN1QxNDI5MzlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xYTQzNDJkMTE2MTQwMjgwOGU4MzljZTIwZDdhM2IxYTZiYTMwMjU0OTViYTdkMzZmNTAyMGJjOGQzODU1MGM4JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.xUewAa9sbEvA_mJXrl35AAkuufuX6cMzhCMXwkBlKKM)
- aiogram
- aiogram-dialog: Библиотека-расширение для aiogram, которая упрощает создание диалогов.
- SQLAlchemy
-
Клонируйте репозиторий
-
Создайте виртуальное окружение и активируйте его
-
Установите зависимости из pyproject.toml
-
Переименуйте файл конфигурации
.env.example
в.env
и заполните его своими данными -
Используемое API для погоды – https://www.weatherapi.com/
-
Соберите docker-образы с помощью команды:
docker compose build
-
Запустите контейнеры с ботом при помощи команды:
docker compose up