Цель проекта - разработать базу данных Telegram-бота для изучения английского языка.
- Спроектирована и создана База Данных в СУБД PostgreSQL
- База Данных заполнена первоначальными данными
- Бот спрашивает перевод слова и предлагает 5 вариантов ответа
- При правильном ответе выводится сообщение об успешной попытке и предлагается перевести следующее слово
- При неверном ответе предлагается попробовать еще раз
- Пользователь также может добавлять собственные слова, при этом он должен быдет ввести сначало нужное слово, а затем его перевод.
- Пользователь может удалять свои собственные пары слов
- Каждый пользователь имеет доступ только к общим и собственным словам!
- readme.md - файл с описанием проекта
- main2.py - основной файл функционала бота
- main.py - файл с функциями для работы с БД
- requirements.txt - файл с зависимостями
- create_db.py - файл с функцией для создания таблиц и структуры БД
- filling_in_the_database.py - файл с функцией по первоначальному заполнению БД данными
- diagrams.png - файл со схемой таблиц БД
- .gitignore - игнорируемые файлы.(Такие как config.py)
- TOKEN = ''
- password = ''
- database = ''
- user = ''
У вас должны быть установлены зависимости проекта
- Клонирование репозитория
git clone https://github.com/backsty/Telegram-Translater-bot.git
- Переход в директорию
cd kursovaya_db
- Создание виртуального окружения
python3 -m venv venv
- Активация виртуального окружения
Для Windows
venv\Scripts\activate
Для Linux
source venv\Scripts\activate
- Установка зависимостей
pip3 install -r requirements.txt
- Запуск скрипта для демонстрации возможностей бота
python3 main2.py --help
Название | Описание |
---|---|
build | Сборка проекта или изменения внешних зависимостей |
sec | Безопасность, уязвимости |
ci | Настройка CI и работа со скриптами |
docs | Обновление документации |
feat | Добавление нового функционала |
fix | Исправление ошибок |
perf | Изменения направленные на улучшение производительности |
refactor | Правки кода без исправления ошибок или добавления новых функций |
revert | Откат на предыдущие коммиты |
style | Правки по кодстайлу (табы, отступы, точки, запятые и т.д.) |
test | Добавление тестов |
- Python + IDE(Pycharm).
- Git + GitHub.
- Postgre + PgAdmin.
- Статья по разработке бота в Telegram.
- Инструкция по созданию бота в Telegram.
- pyTelegramBotAPI.
- Основа бота - код из модуля main.py.
- Исходный код в модуле main.py работает. Чтобы запустить бота нужно ввести команду
/start
в переписке с ним. - Прототип кода из видео. Видео доступно в личном кабинете.
Программу-бота, должна выполнять следующие действия.
- Заполнить базу данных общим набором слов для всех пользователей (цвета, местоимения и т.д.). Достаточно 10 слов.
- Спрашивать перевод слова, предлагая 4 варианта ответа на английском языке в виде кнопок.
- При правильном ответе подтверждать ответ, при неправильном - предлагать попробовать снова.
- Должна быть реализована функция добавления нового слова.
- Должна быть реализована функция удаления слова. Удаление должно быть реальзовано персонально для пользователя.
- Новые слова не должны появляться у других пользователей.
- Работа с ботом после запуска должна начинаться с приветственного сообщения.
Вот пример такого сообщения
Привет 👋 Давай попрактикуемся в английском языке. Тренировки можешь проходить в удобном для себя темпе.
У тебя есть возможность использовать тренажёр, как конструктор, и собирать свою собственную базу для обучения. Для этого воспрользуйся инструментами:
- добавить слово ➕,
- удалить слово 🔙.
Ну что, начнём ⬇️
В качестве примера интерфейса бота можете воспользоваться следующим референсом:
После добавления нового слова выводить количество слов, которые изучает пользователь.