Цель проекта - разработать базу данных Telegram-бота для изучения английского языка.
Вам предстоит:
- спроектировать и реализовать базу данных (БД) для программы;
- разработать программу-бота на Python;
- написать документацию по использованию программы.
В результате выполнения этого задания вы:
- научитесь работать с чужим кодом;
- получите практический опыт работы с PostgreSQL и Telegram;
- закрепите навыки работы с GitHub и программирования на языке Python;
- разработаете полноценный программный продукт, который можно будет добавить в портфолио разработчика.
- У вас должен быть установлен Python 3 и любая IDE. Рекомендуем работать с Pycharm.
- Настроен компьютер для работы с БД PostgreSQL.
- Установлен Git и создан аккаунт на GitHub.
- Cоздан бот в Telegram:
- инструкцию по созданию бота можно посмотреть здесь;
- за основу бота можно взять код из модуля main.py.
Если все этапы чек-листа пройдены, то можете стартовать работу над проектом. Успехов в работе!
- Python + IDE(Pycharm).
- Git + GitHub.
- Postgre + PgAdmin.
- Статья по разработке бота в Telegram.
- Инструкция по созданию бота в Telegram.
- pyTelegramBotAPI.
- Основа бота - код из модуля main.py.
- Исходный код в модуле main.py работает. Чтобы запустить бота нужно ввести команду
/startв переписке с ним.
Чтоб разобраться как работают телеграм-боты, рекомендуем посмотреть видео в ЛК и скачать простого бота из видео. Видео доступно в личном кабинете. На нем вы можете потренироваться и разобраться как всё устроено. После этого уже переходите к заданию по разработке EnglishCard-бота
Необходимо разработать программу-бота, которая должна выполнять следующие действия.
- Заполнить базу данных общим набором слов для всех пользователей (цвета, местоимения и т.д.). Достаточно 10 слов.
- Спрашивать перевод слова, предлагая 4 варианта ответа на английском языке в виде кнопок.
- При правильном ответе подтверждать ответ, при неправильном - предлагать попробовать снова.
- Должна быть реализована функция добавления нового слова.
- Должна быть реализована функция удаления слова. Удаление должно быть реальзовано персонально для пользователя.
- Новые слова не должны появляться у других пользователей.
- Работа с ботом после запуска должна начинаться с приветственного сообщения.
Вот пример такого сообщения
Привет 👋 Давай попрактикуемся в английском языке. Тренировки можешь проходить в удобном для себя темпе.
У тебя есть возможность использовать тренажёр, как конструктор, и собирать свою собственную базу для обучения. Для этого воспрользуйся инструментами:
- добавить слово ➕,
- удалить слово 🔙.
Ну что, начнём ⬇️
В качестве примера интерфейса бота можете воспользоваться следующим референсом:
После добавления нового слова выводить количество слов, которые изучает пользователь.
- Спроектирована база данных для бота. Есть скрипты для её создания и заполнения.
- Разработан бот и все части кода объединены в главной ветке (master/main).
- Написана документация по использованию программы.
- В личном кабинете отправлена ссылка на репозиторий с решением.
Зачёт по курсовому проекту может быть получен, если созданный программный продукт соответствует следующим критериям.
- Отсутствуют ошибки (traceback) во время выполнения программы.
- Результат программы записывается в БД. Количество таблиц должно быть не меньше трёх. Приложена схема БД.
- Программа добавляет новые слова в БД для каждого пользователя.
- Код программы удовлетворяет PEP8. Перед отправкой решения на проверку проверьте код с помощью линтеров.
Работа направляется на доработку, если в проекте:
- Имеются ошибки (traceback) во время выполнения программы.
- Результат программы не записывается в БД. Количество таблиц менее трёх. Отсутствует схема БД.
- Программа не добавляет новые слова в БД для каждого пользователя.
- Код программы не соответствует PEP8.
