Добро пожаловать! Игровой форум WLUX.NET - Игры, Читы, Скрипты, Статьи, Софт, Курсы.

Присоединяйтесь к нам сейчас, чтобы получить доступ ко всем нашим функциям. После регистрации и входа в систему вы сможете создавать темы, публиковать ответы на существующие темы, повышать репутацию участников, скачивать вложения и файлы и многое, многое другое. Так чего же вы ждете?

Добро пожаловать гость!

Приветствуем вас на нашем форуме! Мы очень рады вас видеть и с большим удовольствием поделимся всей информацией нашего форума!

Мы уважаем своих пользователей и так же ждем от вас приятного общения.

Система наград, ежедневное пополнения тем!

Общайся, получай награды.

Статьи, гайды, софт

У нас вы можете скачать бесплатно читы для игр. Полезные гайды на любые темы и схемы заработка. Есть раздел халявы!

FAQ по форуму

Не понимаю, как и что тут работает у вас?!Как создавать темы, писать сообщения, как получать реакции. Почему не засчитывает сообщения. Все ответы здесь

  • Добро пожаловать на сайт - wlux.net!

    FAQ по форуму

    1. Все сообщения до группы местный проходят модерацию от 1 минуты до 24 часа

    2. Сообщения учитываються в следующих разделах: Читать

    3.Что-бы скачать вложение нужно 2 сообщения.

    4.Личные переписки работают только с Администрацией форума

    5. Запрещено: Просить скрытый текст , спам, реклама, скам, ддос, кардинг и другая чернуха, нарушать любые законы РФ/СНГ = бан аккаунта

    6. Внимание! Мы не удаляем аккаунты с форума! Будьте внимательны ДО регистрации! Как удалить аккаунт на форуме?!

    5.Не понимаю, как и что тут работает у вас?!Как создавать темы, писать сообщения, как получать реакции. Почему не засчитывает сообщения. Все ответы здесь

python Гайд Как запустить Python Telegram бота на VPS

wlux.net Оффлайн

wlux.net

Где волчьи уши, там волчьи зубы.
Команда форума
LV
7
 
20.06.2022
23 848
218
36
Награды
10
Пол
Муж.

Репутация:

  • Автор темы
  • Администратор
  • Модератор
  • Команда форума
  • #1
Приветствую всех. Из этой статьи вы узнаете как запустить Telegram бота на виртуальном сервере, и настроить службу для его авто запуска и перезапуска.

Телеграм бот​


Python:
#main.py
import telebot

bot = telebot.TeleBot("ТОКЕН")

@bot.message_handler(func=lambda message: message.text.lower() in ['привет', 'здравствуйте'])
def send_welcome(message):
    bot.reply_to(message, "Здравствуйте!")

@bot.message_handler(func=lambda message: True)
def echo_all(message):
    bot.reply_to(message, 'Я тебя не понимаю(')

bot.infinity_polling()

Виртуальный сервер​

Для демонстрации я буду использовать виртуальный сервер от Beget стоимостью 210 рублей в месяц. Вы можете использовать другого хостинг провайдера, или выбрать другую конфигурацию, в зависимости от вашего проекта.

2.jpg

Подключение к виртуальной машине​

После того как вы создали VPS у вас откроется панель управления, где вы можете скопировать IP адрес машины и подключаться к ней по SSH.

3.jpg

Для этого можно использовать программу PuTTY или клиент OpenSSH, который входит в состав Windows 10. Для подключения по SSH выполните следующую команду:

Код:

И введите пароль который вы указали при создании VPS.

Подготовка сервера​

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

Код:
sudo apt update
sudo apt upgrade

Загрузка и запуск бота​

Перейдите в каталог home и создайте папку для вашего проекта выполнив команды.

Код:
cd /home
mkdir ramziv_bot
cd ramziv_bot

Зайдите панель управления VPS и откройте Файловый менеджер.

4.jpg

Загрузите файлы вашего проекта на сервер, в моем случаи это только один файл main.py.

5.jpg

Установите зависимости вашего проекта, и запустите бота.

Примечание: Ubuntu 20.04 поставляется с установленной Python 3.8 из коробки, если для вашего проекта нужна другая версия, установите ее или используйте другую версию дистрибутива.

Код:
pip install pyTelegramBotAPI
python3 main.py

Теперь перейдите в Телеграм и протестируйте работу.

6.jpg

Работает.

Авто запуск и перезапуск телеграм бота​

Создайте systemd службу для бота.

Код:
sudo nano /lib/systemd/system/ramziv_bot.service

С конфигурацией:

Код:
[Unit]
Description=Ramziv - Telegram Bot
After=syslog.target
After=network.target

[Service]
Type=simple
WorkingDirectory=/home/ramziv_bot/
ExecStart=/usr/bin/python3 /home/ramziv_bot/main.py
RestartSec=60
Restart=always

[Install]
WantedBy=multi-user.target

Нажмите CTRL+S и CTRL+X что бы сохранить и выйти.

Выполните эти две команды что бы запустить службу.

Код:
sudo systemctl enable ramziv_bot
sudo systemctl start ramziv_bot

Ваш бот запушен. Перейдите в Телеграм и убедитесь в этом.

Заключение​

Ваш бот будет всегда запускаться при старте системы, и перезапускается при возникновении ошибки. Для примера вы можете специально вызвать исключения в одной из функций обернутой обработчиком, и отследить ее в журнале командой:

Код:
sudo journalctl -u ramziv_bot.service

#Вывод
#Jun 13 12:35:31 objmnuqxoa python3[1069]:   File "/home/ramziv_bot/main.py", line 7, in send_welcome
#Jun 13 12:35:31 objmnuqxoa python3[1069]:     number = 1/0
#Jun 13 12:35:31 objmnuqxoa python3[1069]: ZeroDivisionError: division by zero
 
T Оффлайн

twinkey

Участник
LV
0
 
06.09.2023
7
0
0
25

Репутация:

Жаль что не нашел тему раньше, пришлось смотреть кучу непонятных видео
 
iwanttodie Оффлайн

iwanttodie

Местный
Участник
LV
3
 
13.09.2023
99
0
36
Награды
5
25
Пол
Муж.

Репутация:

Качественная работа от автора. Спасибо
 
S Оффлайн

Spear

Участник
LV
2
 
08.09.2024
21
0
12
Награды
2
27

Репутация:

как раз учусь делать ботов спасибо
 

Поиск по форуму

Похожие темы:

shape1
shape2
shape3
shape4
shape7
shape8
Верх