An open API service indexing awesome lists of open source software.

https://github.com/noras2001/aiotg

a simple aiogram bot with SQLite
https://github.com/noras2001/aiotg

aiogram sqlite telegram-bot

Last synced: about 1 month ago
JSON representation

a simple aiogram bot with SQLite

Awesome Lists containing this project

README

          

# Чат-бот на базе Aiogram с SQLite базой данных

Этот репозиторий содержит код для чат-бота, который использует библиотеку `aiogram` и базу данных `SQLite`. Бот собирает информацию о пользователе (имя, возраст, класс) и сохраняет её в базе данных.

## Описание

Чат-бот предоставляет интерфейс для сбора данных о пользователях с помощью состояний. Когда пользователь начинает взаимодействие с ботом, он последовательно отвечает на вопросы: "Как тебя зовут?", "Сколько тебе лет?" и "Из какого ты класса?". Полученные данные сохраняются в базе данных SQLite.

### Основные функции

- **Запуск бота**: Бот приветствует пользователя и запрашивает информацию (имя, возраст, класс).
- **Сохранение данных**: Все введённые данные сохраняются в базе данных SQLite.
- **Использование состояний**: Для сбора данных бот использует состояния с помощью механизма FSM (Finite State Machine) в библиотеке `aiogram`.

## Как запустить

1. Установите все необходимые зависимости:
```bash
pip install aiogram sqlite3
```

2. Создайте файл `config.py` с вашим токеном:
```python
TOKEN = "your-bot-token-here"
```

3. Запустите бота:
```bash
python bot.py
```

4. Бот начнёт работать, и вы сможете взаимодействовать с ним в Telegram.

## Структура проекта

- **bot.py**: Основной файл, содержащий логику бота.
- **config.py**: Файл с конфигурацией (токен бота).
- **school_data.db**: База данных SQLite, в которой хранятся данные пользователей.

## Пример взаимодействия с ботом

1. Бот спрашивает: "Привет! Как тебя зовут?"
2. Пользователь отвечает, например: "Иван".
3. Бот спрашивает: "Сколько тебе лет?"
4. Пользователь отвечает, например: "16".
5. Бот спрашивает: "Из какого ты класса?"
6. Пользователь отвечает, например: "11".
7. Данные сохраняются в базе данных.

## Лицензия

Этот проект лицензируется на условиях MIT.