Персонализированный Telegram бот для рекомендаций книг с уникальным характером и системой избранного.
Генри - не просто бот для рекомендаций книг, а виртуальный библиотекарь-вампир. Он помнит каждого пользователя, развивает с ним отношения и предлагает книги в зависимости от выбранного настроения (утреннее/дневное/вечернее/ночное).
- 🎯 Персонализированные рекомендации по уникальным критериям - вайбам времени суток (утро/день/вечер/ночь)
- ⭐ Система избранного с возможностью отмечать книги как прочитанные
- 💖 Система близости - Генри развивает отношения с пользователем
- 🎃 Сезонные фразы - Хэллоуин и другие праздники
- 📖 Мнение Генри о каждой книге в описании
- 🔄 Удобная навигация с листанием вперед/назад
- Найдите бота в Telegram: https://t.me/HenryMapley_litbot
- Нажмите "Start" или отправьте команду
/start - Наслаждайтесь рекомендациями! 📚
/start- Начать работу с ботом
- Выбрать книгу → Выбрать время суток → Листать книги
- Избранное → Просматривать/редактировать сохраненные книги
- Узнать больше → Информация о боте
- Добавляйте книги в избранное при просмотре
- Отмечайте как прочитанные/непрочитанные
- Удаляйте ненужные книги
- Фильтруйте по статусу прочтения
Генри развивает отношения с пользователем на основе:
- Времени использования (дни с первого взаимодействия)
- Количества книг в избранном
- Общего количества просмотренных книг
- Новичок (< 5 очков) - базовые фразы
- Заинтересованный (5-15 очков) - более личные фразы
- Друг (15+ очков) - дружеские фразы
- Python 3.8+
- Telegram Bot Token
- SQLite3
- Клонируйте репозиторий:
git clone https://github.com/your-username/henry-bot.git
cd henry-bot- Создайте виртуальное окружение:
python -m venv venv
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate- Установите зависимости:
pip install aiogram python-dotenv- Настройте переменные окружения:
Создайте файл
.envв корне проекта:
BOT_TOKEN=your_telegram_bot_token_here
ADMIN_ID=your_telegram_user_id_here-
Заполните базу книг: Отредактируйте файл
db/all_books.json- добавьте книги с описаниями и мнением Генри -
Запустите бота:
python main.pyБаза данных:
- SQLite для пользовательских данных
- JSON для базы книг (до ~100 книг)
Архитектура:
- Модульная структура
- Отдельные файлы для разных функций
- Без глобальных переменных
- Асинхронная обработка
Безопасность:
- Переменные окружения для токенов
- Проверка прав доступа для админских функций
- Форкните репозиторий
- Создайте ветку для новой функции
- Внесите изменения
- Создайте Pull Request
Этот проект распространяется под лицензией MIT
Создано с ❤️ для любителей книг и хорошего чтения
Генри ждёт вас в Telegram! 📚✨
