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

Включение логирования

Коротко

Перед тем как приступить к созданию бота, убедитесь, что ваш VPS работает под управлением Linux (например, Ubuntu 22.04 или новее). Необходимое программное обеспечение включает:

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

VPSSANSARAгайд

Создание бота в Telegram для скачивания видео с YouTube: пошаговая инструкция

Подготовка окружения и установка необходимых инструментов

Перед тем как приступить к созданию бота, убедитесь, что ваш VPS работает под управлением Linux (например, Ubuntu 22.04 или новее). Необходимое программное обеспечение включает:

  • Python 3.11 или новее
  • pip — менеджер пакетов Python
  • Git — для клонирования репозиториев
  • FFmpeg — для обработки видео и аудио

Установка Python и pip

`bash sudo apt update sudo apt install python3 python3-pip -y `

Установка Git

`bash sudo apt install git -y `

Установка FFmpeg

`bash sudo apt install ffmpeg -y `

Проверьте версии:

`bash python3 --version pip3 --version git --version ffmpeg -version `

Создание Telegram-бота и получение API-токена

Перейдите в Telegram и найдите бота . Создайте нового бота:

  • Отправьте команду /newbot.
  • Назовите бота, задайте уникальное имя.
  • Получите токен API — он понадобится для взаимодействия с Telegram API.

Запишите токен, он понадобится для дальнейшей настройки.

Настройка проекта и установка зависимостей

Создайте папку для проекта и войдите в нее:

`bash mkdir youtube_downloader_bot cd youtube_downloader_bot `

Инициализируйте виртуальное окружение (рекомендуется):

`bash python3 -m venv venv source venv/bin/activate `

Установите необходимые библиотеки:

`bash pip install python-telegram-bot yt-dlp `

python-telegram-bot — библиотека для взаимодействия с API Telegram yt-dlp — современный форк youtube-dl, предназначенный для скачивания видео с YouTube и других платформ

Создание скрипта бота

Создайте файл 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 = 'ВАШ_ТОКЕН_ТУТ'

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() if not ("youtube.com/watch" in url or "youtu.be/" in url): await update.message.reply_text("Пожалуйста, отправьте корректную ссылку на видео YouTube.") return

await update.message.reply_text("Обрабатываю ваш запрос, пожалуйста, подождите...")

filename = f"video_{update.message.message_id}.mp4" ytdl_opts = { 'format': 'bestaudio/best', 'outtmpl': filename, 'noplaylist': True, 'quiet': True, 'no_warnings': True, 'postprocessors': [{ # Конвертация в mp4 'key': 'FFmpegVideoConvertor', 'preferedformat': 'mp4' }] }

try: with YoutubeDL(ytdl_opts) as ydl: ydl.download([url])

await update.message.reply_video(open(filename, 'rb')) os.remove(filename) except Exception as e: logging.error(f"Ошибка при скачивании: {e}") await update.message.reply_text("Произошла ошибка при скачивании видео. Попробуйте позже.")

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

app.add_handler(CommandHandler("start", start)) app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, download_video))

app.run_polling()

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

Замените 'ВАШ_ТОКЕН_ТУТ' на ваш реальный токен, полученный от BotFather.

Запуск бота и тестирование

Запустите бота командой:

`bash python bot.py `

В Telegram откройте чат с вашим ботом и отправьте ссылку на видео YouTube. После обработки вы получите видеофайл.

---

Какие устройства подходят для запуска бота

  • Личный VPS: Идеальный выбор для постоянной работы сервиса. Обеспечит стабильность и безопасность.
  • Домашний сервер или ПК: Можно запускать на мощных ПК с Linux или Windows.
  • Облачные платформы: Можно использовать облачные серверы, такие как DigitalOcean, Hetzner, или даже AWS, если есть необходимость в масштабировании.

Важно, чтобы устройство имело стабильное интернет-соединение и возможности по запуску Python скриптов.

---

Чеклист по настройке и запуску бота

  • [x] Установить Linux на VPS или другое устройство
  • [x] Обновить систему (sudo apt update && sudo apt upgrade)
  • [x] Установить Python 3.11+ и pip
  • [x] Установить Git и FFmpeg
  • [x] Создать Telegram-бота через BotFather и получить токен
  • [x] Создать проект, установить библиотеки python-telegram-bot и yt-dlp
  • [x] Написать скрипт бота (bot.py)
  • [x] Запустить бота и протестировать работу
  • [x] Настроить автоматический запуск (например, через systemd или screen/tmux)

---

FAQ

В: Можно ли скачивать видео с других платформ? О: Да, yt-dlp поддерживает множество сайтов, таких как Vimeo, Facebook (запрещена в РФ), Twitter и другие. Просто вставляйте соответствующие ссылки.

В: Какие ограничения по длине видео? О: Теоретически — любые, однако при очень больших файлах рекомендуется учитывать лимиты по времени обработки и размерам файлов.

В: Можно ли добавить функционал для выбора качества видео? О: Да, для этого нужно расширить скрипт, добавив обработку команд, например, /quality, и параметры для выбора формата.

В: Как обезопасить бота от злоупотреблений? О: Можно ограничить количество запросов в минуту, добавить авторизацию или проверку пользователей.

В: Что делать, если видео не скачивается? О: Проверить логирование, убедиться, что yt-dlp установлен и работает корректно, а также, что на сервере есть свободное место и правильные права доступа.

---

Итог

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

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

Ещё по теме

CTA · VPSLINE

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

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