CurrencyBot — это Telegram-бот для просмотра актуальных курсов валют и конвертации сумм между различными валютами в реальном времени. Бот использует данные Центрального Банка РФ.
- Просмотр всех доступных курсов валют.
- Просмотр популярных валют (USD, EUR, CNY, BYN, KZT, UAH).
- Поиск курса конкретной валюты по коду.
- Конвертация сумм между валютами в двух направлениях:
- Валюта → Российский рубль (RUB).
- Российский рубль (RUB) → Валюта.
- Интерактивный диалог с подтверждением повторных операций.
- Информация об источнике данных и времени обновления.
- Обработка ошибок ввода с понятными сообщениями.
Перед запуском CurrencyBot убедитесь, что у вас есть следующее:
- Установлен Python 3.x на вашем компьютере.
- Токен бота Telegram. Создайте бота в Telegram и получите токен у BotFather.
Клонировать репозиторий и перейти в него в командной строке:
git clone git@github.com:andrew12022/currency_bot.git
cd currency_bot
Cоздать и активировать виртуальное окружение:
python -m venv venv
source venv/Scripts/activate
Установить зависимости из файла requirements.txt:
python -m pip install --upgrade pip
pip install -r requirements.txt
Создать файл .env на основе .env.example:
copy .env.example .env
Отредактировать .env файл:
BOT_TOKEN=ваш_токен_телеграм_бота
LOG_LEVEL=DEBUG
LOG_FORMAT=[%(asctime)s] #%(levelname)-8s %(filename)s:%(lineno)d - %(name)s - %(message)s'
CBR_API_URL='https://www.cbr-xml-daily.ru/daily_json.js'Запустить бота с помощью следующей команды:
python main.py
- Начните чат с ботом в Telegram
- Отправьте команду
/startдля получения приветственного сообщения и списка возможностей. - Используйте команду
/helpдля просмотра всех доступных команд. - Отправьте команду
/current_currencyдля просмотра курсов валют. - Используйте команду
/convertдля конвертации сумм между валютами. - Отправьте команду
/data_infoдля получения информации об источнике данных.
- Python
- Aiogram
- Aiohttp
- Pydantic
- Environs
- Flake8