VPSLINE
SANSARA1 августа 2026 г.6 мин

Как сделать бота для скачивания видео с YouTube в Telegram на VPS: пошаговая инструкция 2026

Коротко

В современном мире видеоконтент занимает важное место в нашей жизни. Иногда возникает необходимость быстро скачивать видео с YouTube для личного использования или хранения. Создание собственного бота для скачивания видео в Telegram — удобное решение, которое позволяет автоматизировать этот процесс и управлять им напрямую из мессенджера. В этой статье я расскажу, как на практике настроить такого бо

Узнайте, как создать бота для скачивания видео с YouTube в Telegram на VPS с пошаговой инструкцией, чтобы автоматизировать загрузку и хранение видеофайлов.

VPSSANSARAгайд

В современном мире видеоконтент занимает важное место в нашей жизни. Иногда возникает необходимость быстро скачивать видео с YouTube для личного использования или хранения. Создание собственного бота для скачивания видео в Telegram — удобное решение, которое позволяет автоматизировать этот процесс и управлять им напрямую из мессенджера. В этой статье я расскажу, как на практике настроить такого бота на VPS, чтобы он был надежным, быстрым и безопасным.

Почему именно VPS для этого проекта?

Использование личного VPS (виртуального приватного сервера) дает ряд преимуществ:

  • Автономность: бот работает 24/7 без вашего постоянного присутствия.
  • Безопасность: изолированная среда, которая не мешает другим сервисам.
  • Гибкость: возможность настройки под свои нужды и масштабирования.
  • Контроль: полный доступ к серверу и его конфигурации.

Что вам потребуется для реализации

Перед началом убедитесь, что у вас есть:

  • Доступ к VPS с установленной операционной системой Linux (например, Ubuntu 22.04 или 24.04).
  • Зарегистрированный аккаунт в Telegram, созданный для бота.
  • Основные знания командной строки и работы с сервером.
  • Установленный Python 3.11+.
  • Доступ к терминалу и базовые навыки работы с Git и пакетом pip.

Шаг 1. Подготовка VPS

  1. 01Обновите систему и установите необходимые инструменты

`bash sudo apt update && sudo apt upgrade -y sudo apt install -y python3 python3-pip git ffmpeg `

  1. 01Настройка брандмауэра (firewall)

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

`bash sudo ufw allow ssh sudo ufw enable `

Шаг 2. Создание бота в Telegram

  1. 01Откройте Telegram и найдите бота .
  2. 02Создайте нового бота командой /newbot.
  3. 03Следуйте инструкциям: укажите название и username.
  4. 04После создания получите токен API — он понадобится для интеграции.

Шаг 3. Разработка бота

  1. 01Создайте директорию проекта

`bash mkdir ~/youtube_tg_bot cd ~/youtube_tg_bot `

  1. 01Инициализируйте виртуальное окружение и установите необходимые библиотеки

`bash python3 -m venv venv source venv/bin/activate pip install python-telegram-bot yt-dlp `

  1. 01Создайте файл bot.py

`python import os import logging from telegram import Update from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes, MessageHandler, filters from yt_dlp import YoutubeDL

logging.basicConfig( format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO )

TOKEN = 'ВАШ_ТЕЛЕГРАМ_ТОКЕН'

DOWNLOAD_DIR = 'downloads'

if not os.path.exists(DOWNLOAD_DIR): os.makedirs(DOWNLOAD_DIR)

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE): await update.message.reply_text( "Привет! Я бот для скачивания видео с YouTube. Просто отправьте мне ссылку, и я пришлю вам видео." )

async def download_video(update: Update, context: ContextTypes.DEFAULT_TYPE): url = update.message.text.strip() await update.message.reply_text("Обработка запроса...")

ydl_opts = { 'outtmpl': os.path.join(DOWNLOAD_DIR, '%(title)s.%(ext)s'), 'format': 'bestaudio/best', 'merge_output_format': 'mp4', 'noplaylist': True, 'quiet': True, 'no_warnings': True, }

try: with YoutubeDL(ydl_opts) as ydl: info_dict = ydl.extract_info(url, download=True) filename = ydl.prepare_filename(info_dict) except Exception as e: await update.message.reply_text(f"Ошибка при скачивании: {e}") return

try: await update.message.reply_video(open(filename, 'rb')) except Exception as e: await update.message.reply_text(f"Не удалось отправить видео: {e}")

os.remove(filename)

def main(): application = ApplicationBuilder().token(TOKEN).build()

application.add_handler(CommandHandler('start', start)) application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, download_video))

application.run_polling()

if name == 'main': main() `

  1. 01Заполните TOKEN своим токеном.

Шаг 4. Запуск бота

  1. 01Активируйте виртуальное окружение и запустите бота:

`bash source venv/bin/activate python bot.py `

  1. 01Проверьте работу, отправив ссылку на видео в чат с ботом.

Шаг 5. Автоматизация запуска

Чтобы бот запускался автоматически при перезагрузке сервера, создайте systemd-юнит:

`bash sudo nano /etc/systemd/system/youtube_tg_bot.service `

Вставьте следующее содержание:

`ini [Unit] Description=Telegram YouTube Download Bot After=network.target

[Service] User=ваш_пользователь WorkingDirectory=/home/ваш_пользователь/youtube_tg_bot ExecStart=/usr/bin/python3 /home/ваш_пользователь/youtube_tg_bot/bot.py Restart=always

[Install] WantedBy=multi-user.target `

Замените ваш_пользователь на ваше имя пользователя.

Активируйте и запустите сервис:

`bash sudo systemctl daemon-reload sudo systemctl enable youtube_tg_bot.service sudo systemctl start youtube_tg_bot.service `

Теперь бот будет автоматически запускаться при перезагрузке сервера и работать в фоновом режиме.

Важные замечания и рекомендации

  • Обратите внимание на авторские права: скачивание и распространение защищенного видео может нарушать законы. Используйте бот только для личных целей.
  • Ограничьте доступ: по желанию добавьте проверку на авторизацию пользователей, чтобы бот не использовали злоумышленники.
  • Обновление yt-dlp: периодически обновляйте библиотеку для корректной работы с новыми форматами YouTube:

`bash pip install -U yt-dlp `

  • Логи и мониторинг: настройте логирование и мониторинг работы бота для быстрого реагирования на возможные сбои.

Итог

Создание бота для скачивания видео с YouTube в Telegram — это достаточно простая задача, которая позволяет автоматизировать процесс загрузки и хранения видеоконтента. Используя VPS, вы получаете надежную платформу для постоянной работы бота, а Python и библиотеки yt-dlp делают разработку максимально гибкой и удобной. Следуйте этим шагам, и у вас получится собственный инструмент для скачивания видео, который можно дополнительно расширять и адаптировать под свои нужды.

---

Если возникнут вопросы или потребуется помощь в настройке, обращайтесь — команда SANSARA всегда готова помочь вам с практическими решениями!

Ещё по теме

CTA · VPSLINE

Личный VPS — без терминала и очередей

Регистрация, импорт профиля и стабильный канал на телефон и компьютер. Тот же принцип, о котором мы пишем в блоге — на практике.