YurecNT

Python - самообучающийся чат-бот для Телеграмм

скачать бесплатно бота для телеграм на Python, самообучающийся чат бот для телеграмм

На досуге было нечего делать, решил посмотреть на Python, раньше никогда на нем не программировал и его синтаксис кардинально отличается от моего родного языка PHP, но за вечер мне удалось состряпать не сложного чат-бота... Да, не обошлось без глюков и ошибок... Пришлось гуглить как подружить Python с MySQL... Но я справился, на второй день - я научил чат бота учиться и поселил в Телеграме под ником yurecnt_bot

Данный скрипт не претендует на гениальность, вопросы и ответы он хранит в базе данных, нейронной сети нет и учится на тех ответах, что дают пользователи.

Принцип работы:

Берет от пользователя сообщение, проверяет - есть ли в базе ответ, если более менее подходящих ответов несколько - берет случайный и отвечает, если ответа нет - спрашивает у пользователя, чтобы он ответил, затем обновляет базу данных.

Учитывая качество современного образования в РФ, я бы жестко контролировал процесс обучения бота... А то может начать грубить всем.... И диалоги будут состоять из мата =)

Самообучение в скрипте можно выключить, но тогда придется самим набивать готовую базу ответов на возможные вопросы, так же учитывая грамотность многих интернет-пользователей - он может проигнорировать вопросы с ошибкой.

Как было написано в самом начале - бот использует MySQL, по этому надо будет создать ему базу данных, у меня она просто называется bot и в ней всего одна таблица:

CREATE TABLE `dialog` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `v` longtext DEFAULT NULL,
  `o` longtext DEFAULT NULL,
  `dialog_id` varchar(250) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 Так же для работы нужны модули с помощью которых он цепляется к телеграмм:

pip install python-telegram-bot --upgrade
pip install pytelegrambotapi
pip install pymysql

Для работы бота вам необходимо его зарегистрировать, для этого в Телеграмме найдите бота BotFather

Напишите ему следующие команды:

/start
/newbot
ИМЯБОТА_bot

Система сгенерирует ваш API-ключ, который нужно указать в чат-боте, так же не забудьте указать ваши параметры подключения к MySQL.

Скачать исходник

Программ без ошибок не бывает, почему то иногда при коротких сообщениях (1 символ) он вылетает, по этому я добавил на своем VPS его запуск в крон на каждые 10 минут, оперативку и проц не жрет, так что можно. Сохраняем код в файл bot.py и можем запускать, проверено в Linux на Python 3


Рейтинг: 33

Обновлено: 21.11.2024

Информация об авторе

Евдокимов Юрий Владимирович

Я начал свою карьеру программистом в возрасте около 17 лет.

Изначально я хотел стать электриком, но что-то пошло не так - мне подарили первый компьютер... не рабочий... Сказали починишь - п ....

Администратор сайта


Все статьи автора

Благодарности: 1

Рейтинг: 2

Поддержать автора


СБП (Сбер) 9221301778

Самое читаемое:
Все о загрузочных флешках, дисках и ссд
Все о загрузочных флешках, дисках и ссд
Загрузимся хоть с загрузочного ....
14.09.2024
Публикация базы данных 1С
Публикация базы данных 1С
Не большой мануал по настройке ....
09.09.2023
Не Play Market-ом единым
Не Play Market-ом единым
Свободное ПО для Android ....
13.10.2024
Бесплатные программы для работы с разделами жесткого диска
Бесплатные программы для работы с разделами жесткого диска
краткий обзор бесплатных прогр ....
17.05.2024
QBasic 4.5
QBasic 4.5
Древние языки ....
18.10.2024
Windows 3.11 - полный дистрибутив!
Windows 3.11 - полный дистрибутив!
старые окна ....
03.09.2023
Windows XP SP 2 слетел драйвер дисковода CD/DVD (2015 г.)
Windows XP SP 2 слетел драйвер дисковода CD/DVD (2015 г.)
И такое бывало.... мало ли, пу ....
16.05.2024
Установка OwnCloud на Linux Debian 11 или 12
Установка OwnCloud на Linux Debian 11 или 12
Отличное облачное решение для ....
04.11.2024
1С Бухгалтерия - ошибка формата потока (3.0.88.22)
1С Бухгалтерия - ошибка формата потока (3.0.88.22)
1С Бухгалтерия - ошибка формат ....
16.05.2024
Windows PE
Windows PE
Спасение утопающих в руках уто ....
28.09.2024
Как сбросить пароль Windows 7-10
Как сбросить пароль Windows 7-10
Входим в нее...... ....
17.08.2024
Программы восстановления удаленных файлов
Программы восстановления удаленных файлов
Реанимируем почти убитое ....
16.05.2024
Как разблокировать системный реестр Windows
Как разблокировать системный реестр Windows
Если нельзя, но очень хочется ....
16.05.2024
Как отвязать Windows 7, 8, 10 от оборудования
Как отвязать Windows 7, 8, 10 от оборудования
Переносим операционку на другу ....
18.11.2024
LanScope 2.9.1
LanScope 2.9.1
Простая программа для сканиров ....
11.08.2023
Простое лимитирование дискового пространства Linux
Простое лимитирование дискового пространства Linux
Разделяй и влавствуй над диско ....
21.11.2024
Многофункциональный обработчик кнопок JQuery
Многофункциональный обработчик кнопок JQuery
Многофункциональный обработчик ....
13.08.2023
Установка Debian и Ubuntu по сети через PXE
Установка Debian и Ubuntu по сети через PXE
бездисковая установка линукс! ....
16.05.2024
Бесплатный SSL-сертификат и настройка Nginx
Бесплатный SSL-сертификат и настройка Nginx
Бесплатные ssl сертификаты ....
16.05.2024
GParted Life CD Загрузка по сети с PXE
GParted Life CD Загрузка по сети с PXE
Скачать бесплатно GParted Life ....
26.05.2024
Запуск Ubuntu на Android
Запуск Ubuntu на Android
Устанавлиаем Ubuntu на мобильн ....
01.01.1970
Обновляем Debian с 11 на 12!
Обновляем Debian с 11 на 12!
Обновляем операционку почти бе ....
16.05.2024
Убираем из адресной строки www
Убираем из адресной строки www
убираем зеркала сайтов исключа ....
13.08.2023
Python - самообучающийся чат-бот для Телеграмм
Python - самообучающийся чат-бот для Телеграмм
скачать бесплатно бота для тел ....
16.05.2024
Ускорение работы сайта
Ускорение работы сайта
Ускоряем сайт с помощью настро ....
26.05.2024
Frontol XPOS Настройка копии чека
Frontol XPOS Настройка копии чека
FrontolXPOS - настраиваем печа ....
16.05.2024
Опыт заработка на сайте
Опыт заработка на сайте
Можно ли нормально заработать ....
25.01.2023
Брут http-авторизации на PHP
Брут http-авторизации на PHP
Взлом HTTP-авторизации ....
21.11.2024
Настройка spamassassin для работы с MySQL
Настройка spamassassin для работы с MySQL
Боремся со спамом ....
01.01.1970