Как создать бота для скачки видео с YouTube в Telegram на вашем VPS (2026 год)
Коротко
---
Узнайте, как настроить надежного бота для скачивания видео с YouTube в Telegram на вашем VPS, чтобы легко сохранять и делиться контентом без лишних усилий.
---
В современном мире многие пользователи ищут удобные способы сохранять и делиться видеоматериалами с YouTube. В этой статье мы подробно расскажем, как настроить собственного бота для автоматической загрузки видео с YouTube в Telegram. Это решение подходит для тех, кто хочет иметь контроль над процессом и избегать сторонних сервисов.
Почему именно бот для скачки видео с YouTube в Telegram?
На 2026 год автоматизированные решения остаются одним из лучших способов повысить эффективность работы с контентом. Создание собственного бота позволяет:
- Быстро скачивать видео прямо в чат Telegram.
- Обеспечить приватность и безопасность.
- Настраивать дополнительные функции, например, выбор качества или формат файла.
- Использовать свой VPS для стабильной работы 24/7.
Что потребуется для реализации
Перед началом убедитесь, что у вас есть:
- VPS с Linux (например, Ubuntu 22.04 или новее).
- Доступ к командной строке с правами sudo.
- Зарегистрированный бот в Telegram (через BotFather).
- Основные знания командной строки и Python.
Шаг 1. Регистрация бота в Telegram
- 01Откройте Telegram и найдите бота .
- 02Создайте нового бота командой /newbot.
- 03Следуйте инструкциям: укажите имя и юзернейм бота.
- 04После создания получите токен API — он понадобится для взаимодействия.
Запомните или скопируйте токен.
Шаг 2. Настройка сервера и установка необходимых инструментов
На вашем VPS необходимо установить Python 3, pip и несколько библиотек.
`bash sudo apt update sudo apt upgrade -y sudo apt install python3 python3-pip -y `
Далее установим библиотеки для работы с Telegram и YouTube:
`bash pip3 install python-telegram-bot yt-dlp `
- python-telegram-bot — для взаимодействия с API Telegram.
- yt-dlp — современная замена youtube-dl, для скачивания видео.
Шаг 3. Создание скрипта бота
Создайте файл bot.py:
`python import logging from telegram import Update from telegram.ext import ApplicationBuilder, CommandHandler, MessageHandler, filters, ContextTypes import yt_dlp import os
TOKEN = 'ВАШ_ТОКЕН_ЗДЕСЬ'
logging.basicConfig( format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO )
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
chat_id = update.message.chat_id await update.message.reply_text('Обрабатываю вашу ссылку, пожалуйста, подождите...')
filename = f"{chat_id}_{int(update.message.date.timestamp())}.mp4"
ydl_opts = { 'outtmpl': filename, 'format': 'bestvideo+bestaudio/best', 'merge_output_format': 'mp4', 'quiet': True, 'no_warnings': True, }
try: with yt_dlp.YoutubeDL(ydl_opts) as ydl: ydl.download([url])
await context.bot.send_video(chat_id=chat_id, video=open(filename, 'rb')) os.remove(filename) except Exception as e: await update.message.reply_text(f'Произошла ошибка: {e}')
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() `
Обратите внимание: замените 'ВАШ_ТОКЕН_ЗДЕСЬ' на ваш реальный токен.
Шаг 4. Запуск бота и тестирование
- 01Загрузите скрипт на ваш VPS, например, через SCP или с помощью редактора nano:
`bash nano bot.py `
- 01Запустите бота:
`bash python3 bot.py `
- 01В Telegram найдите вашего бота по юзернейму (указанному при регистрации) и отправьте команду /start.
- 02В ответ отправьте ссылку на видео с YouTube — бот скачает и отправит его обратно.
Шаг 5. Автоматизация и безопасность
Для постоянной работы рекомендуется запустить бота в фоне с помощью tmux или systemd. Например, создадим systemd-сервис:
`bash sudo nano /etc/systemd/system/youtube_bot.service `
Вставьте:
`ini [Unit] Description=YouTube Video Download Bot After=network.target
[Service] User=ваш_пользователь WorkingDirectory=/путь/к/скрипту ExecStart=/usr/bin/python3 /путь/к/скрипту/bot.py Restart=always
[Install] WantedBy=multi-user.target `
Замените ваш_пользователь и /путь/к/скрипту. Затем активируйте и запустите сервис:
`bash sudo systemctl daemon-reload sudo systemctl enable youtube_bot.service sudo systemctl start youtube_bot.service `
Теперь бот будет автоматически запускаться при перезагрузке сервера.
Итог
Создание собственного бота для скачки видео с YouTube в Telegram — это мощное решение для быстрого сохранения и обмена видеоконтентом. Настроив его один раз, вы получите стабильный инструмент, который работает 24/7 на вашем VPS. В будущем можно дополнительно реализовать функции выбора формата, автоматической обработки плейлистов или интеграцию с облачными хранилищами.
Если возникнут сложности или потребуется помощь — обращайтесь к документации python-telegram-bot и yt-dlp, они содержат массу полезных настроек.
Ещё по теме
Читайте также
CTA · VPSVDS
Личный VPS — без терминала и очередей
Регистрация, импорт профиля и стабильный канал на телефон и компьютер. Тот же принцип, о котором мы пишем в блоге — на практике.