Запуск скрипта Python на VDS в режиме 24/7 + автозапуск после перезагрузки.
Сделаем простого бота
Для начала, нам нужно будет установить несколько пакетов Python:
pip install pytelegrambotapi
pip install pyttsx3
Затем, создадим новый бот в телеграм:
Теперь, приступим к написанию кода.
import telebot
import pyttsx3
bot_token = "TOKEN" # здесь должен быть ваш токен бота
bot = telebot.TeleBot(bot_token)
@bot.message_handler(func=lambda m: True)
def text_to_speech(message):
engine = pyttsx3.init()
engine.setProperty('voice', "russian") # можно выбрать другой голос
engine.say(message.text)
engine.runAndWait()
engine.stop()
bot.polling()
Код выше принимает любое входящее сообщение, использует библиотеку pyttsx3 для преобразования текста в речь и отвечает пользователю звуком.
Наконец, остановим бота и сохраним код в файле bot.py.
Чтобы запустить бота на своем компьютере, нужно ввести в терминале:
И теперь, ваш бот готов к использованию!
- Установите Python на свой компьютер, если у вас его еще нет.
- Установите необходимые пакеты, как указано выше.
- Создайте нового бота в телеграм и получите токен.
- Скопируйте код в файл
bot.py. - Запустите
bot.pyв терминале. - Готово! Теперь вы можете использовать вашего бота.
Как установить бота на VDS.
- Начните с настройки VDS сервера. Выберите провайдера, который лучше всего соответствует вашим потребностям и бюджету.
- После настройки сервера можно приступать к установке бота. Для этого нужно подключиться к серверу с помощью SSH-клиента, такого как Putty.
- После подключения к серверу нужно установить Python, если еще не установлен. Для установки Python 3 на Ubuntu Linux, используйте следующие команды:
sudo apt update sudo apt install python3 - При установке Питона также установите необходимые библиотеки, используя команды pip:
sudo apt install python3-pip pip3 install pytelegrambotapi pip3 install pyttsx3 - Скопируйте файлы
bot.pyна сервер, используя удобный для вас способ. Например, вы можете использовать FTP клиент, такой как FileZilla. - Запустите бота с помощью команды:
python3 bot.py &Знак амперсанда & означает, что процесс должен быть запущен в фоновом режиме. - Теперь ваш бот должен работать постоянно в режиме 24/7. Если вы хотите остановить бота, используйте команду:
ps aux | grep bot.py # найдите ID процесса kill ID # остановите процесс по ID
Теперь вы знаете, как установить Python, необходимые библиотеки и запустить бота на VDS сервере!
Как сделать, чтобы бот автоматически запускался при перезагрузке сервера.
- Создайте новый файл с расширением
.serviceв директории/etc/systemd/system/. Например,/etc/systemd/system/telegram-bot.service.sudo nano /etc/systemd/system/telegram-bot.service - Добавьте в файл следующий код:
[Unit]
Description=Telegram Bot
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/python3 /path/to/bot.py
Restart=always
RestartSec=10
User=<username> # замените на ваше имя пользователя
[Install]
WantedBy=multi-user.target
Замените/path/to/bot.pyна фактический путь к файлуbot.py. Используйте командуwhoami, чтобы узнать своё имя пользователя для замены<username>. Это сообщит системе, какой пользователь должен запускать скрипт. - Сохраните файл, используя команду
Ctrl+X, затемY. - Затем нужно запустить следующую команду:
sudo systemctl daemon-reloadЭта команда сообщит демону systemctl, что была добавлена новая служба. - Запустите свежую службу с помощью следующей команды:
sudo systemctl start telegram-bot.serviceПроверьте, работает ли служба, используя команду:sudo systemctl status telegram-bot.serviceПоследняя команда позволит проверить, работает ли служба корректно. - Если служба работает корректно, активируйте её с помощью команды:
sudo systemctl enable telegram-bot.serviceЭто сообщит системе, что службу нужно запускать автоматически при перезагрузке сервера.
Теперь ваш бот автоматически будет запускаться при запуске сервера или при его перезагрузке.