2409

Telegram-бот для скачивания видео из VK и YouTube1

Я периодически люблю ставить себе фоном видео с youtube (а точнее, только аудио) во время прогулки, езды на велосипеде, или просто когда еду за рулем. Ну и с недавних пор, когда многие видео вынужденно стали заливаться только на Вконтакте, стал слушать и оттуда.

Слушать в таком формате удобнее всего через Telegram-бота: из видео сразу удаляются все рекламные вставки, нет необходимости держать экран включенным, ну и можно скачать видео заранее дома и не тратить трафик мобильного интернета. Плюс, в некоторых странах стоит бан на YouTube или ВК, а Telegram - доступен.

Поискав по интернету и не найдя нормальных вариантов, я решил руководствоваться принципом - "хочешь сделать что-то хорошо - сделай это сам". Поэтому я написал бота - @SaveFromVkBot, который позволяет скачивать видео и аудио из ВК и YouTube в Telegram за несколько кликов.

Как это работает?

Добавляем бота @SaveFromVkBot в Telegram, нажимает кнопку старт.

Далее просто присылаем боту ссылку на видео, которое хотим скачать, например https://youtu.be/KOPzZ1fzAos.

Далее выбираем формат, в котором хотим скачать файл: либо просто аудио, либо видео в нужном разрешении. Всё, секунд через 20-30 бот пришлет аудио- или видео-файл. Для больших видео обработка может занять до минуты. Результат будет выглядеть примерно так:

После скачивания бот показывает краткую информацию о видео (автор, дата публикации, продолжительность и формат). Это удобно, когда накачал уже много видео, и нужно в этом потоке как-то ориентироваться

Ещё из фишек: если видео до вас уже скачал кто-то другой, то рядом стоять специальная плашка "⚡ мгновенно". Это означает, что данный файл уже есть на серверах телеграмма, и его даже не нужно дополнительно обрабатывать - бот пришлёт вам этот файл мгновенно.

Планов расширение функционала бота - громадьё:

  • Добавление поддержка других видео-хостингов rutube, одноклассников, instagram-а.

  • Автоматическое "вырезание" из видео нативной рекламы, а также надоедливых блоков, вида "ставьте лайки, подписывайтесь на канал".

  • Поддержка файлов большого размера (в данный момент ограничение Telegram — 2 ГБ), это актуально для длинных видео и больших разрешений.

Бот делался в первую очередь для себя и знакомых и в данный момент бот находится с статусе beta - возможны баги и косяки. Но я обязательно всё починю. Так что буду рад, если бот окажется полезным кому-то ещё и обратной связи.

Ссылки:

Бот: https://t.me/SaveFromVkBot

Канал с обновлениями: https://t.me/SaveFromVkChannel

Бот обратной связи: https://t.me/SaveFromVkFeedbackBot

Для интересующихся техническими деталями реализации бота, есть статья на Хабре с подробным описанием устройства бота: https://habr.com/ru/articles/735902/.

Правила сообщества

0. Запрещены посты вне тематики сообщества

1. Уважайте труд людей, пишите только конструктивную критику,

2. Не выкладывайте информацию по своему проекту чаще 2ух раз в месяц

31
Автор поста оценил этот комментарий

А диск не треснет от промежуточного скачивания тысяч видеороликов по гигабайту каждый?)

раскрыть ветку (1)
33
Автор поста оценил этот комментарий

Файлы заливаются в Telegram - облако, после чего удаляются.

Будем надеяться, у Telegram диск не треснет)

показать ответы
10
Автор поста оценил этот комментарий

Интересно было бы почитать про реализацию бота, как делал скачивание с ютуба чтобы не забанили бота, где хостится бот, как работает сервер, и не забанит ли телеграм? Тут уже был проект пикабушника, но он с украины, поэтому временно (надеюсь) не работает. Так же есть такой бот в телеграм, который качает с ютуб, там реализована подписка без рекламы и скачивание без очереди. В общем желаю вашему проекту развития, есть множество "путей развития", так что бот может в будушем содержать себя сам (за счет рекламы, подписки итд). Сам сейчас живу в деревне, и иногда интернет проподает, тогда и пользуюсь такими ботами. Хотелось бы реализации скачивания с твича видео трансляций, с указанием времени какую часть скачивать.

раскрыть ветку (1)
13
Автор поста оценил этот комментарий

Технические подробности описал в статье на Хабре - https://habr.com/ru/articles/735902/

показать ответы
5
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
6
Автор поста оценил этот комментарий

да, такая возможность планируется, обязательно добавим

показать ответы
3
Автор поста оценил этот комментарий

Попробовал

Иллюстрация к комментарию
раскрыть ветку (1)
4
Автор поста оценил этот комментарий

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

показать ответы
2
Автор поста оценил этот комментарий

Как сделали каждый видеопоток со звуком? С помощью ffmpeg?

Как решили проблему с возрастными ограничениями? Подкачивает куки браузера?

Заглянул на хабр - познавательно.

Успехов в развитии!

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Как сделали каждый видеопоток со звуком? С помощью ffmpeg?

да, потоки склеиваются после скачивания с помощью ffmpeg


Как решили проблему с возрастными ограничениями? Подкачивает куки браузера?

пока никак)

Автор поста оценил этот комментарий
Уже давно ютуб вансед изобрели. Хоть заслушался фоном. И скачивать ничего не надо
раскрыть ветку (1)
3
Автор поста оценил этот комментарий

youtube vanced - закрылся,  youtube revanced - не позволяет скачивать из ВК

1
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Именно так и сделано

0
Автор поста оценил этот комментарий

я что то не так делаю? и из вк и из ютуба вводил ссылки - ничего не работает. попробовал на компе, телефоне и планшете - ничего  не качает.

Иллюстрация к комментарию
раскрыть ветку (1)
2
Автор поста оценил этот комментарий

были технические работы (последствия пикабу эффекта), сейчас всё должно работать

2
Автор поста оценил этот комментарий
Потому что ссылка кривая. Надо именно на видео ссылку давать.
раскрыть ветку (1)
2
Автор поста оценил этот комментарий

именно так, нужно вставлять ссылку на видео, а не на пост с видео

1
Автор поста оценил этот комментарий

yt-dlp первая ссылка на гитхабе, как им пользвоаться найдёте на ютубе

https://github.com/yt-dlp/yt-dlp

Предпросмотр
YouTube13:25
раскрыть ветку (1)
4
Автор поста оценил этот комментарий

бот как раз и качает с помощью yt-dlp.

показать ответы
0
Автор поста оценил этот комментарий

Спасибо.

Как он справляется с длинными видео (больше 5 часов)? Иногда старые сериалы выкладывают ВК одним файлом.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

пока длинные файлы можно скачать только в маленьком разрешение (телеграмм устанавливает лимит в 2ГБ, с этим сделать ничего нельзя)


в планах - для больших видео сделать разбивку на несколько файлов.

показать ответы
Автор поста оценил этот комментарий

Благослови тебя Всесвет! Люблю такие темы. А когда освоение rutube планируется?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

rutube в планах есть.

Бот разрабатывается и поддерживается как сайд-проект в свободное от основной работы время, поэтому никаких прогнозов относительно сроков я не даю.

показать ответы
0
Автор поста оценил этот комментарий
А насколько точно и каким образом определяется вес конечного файла? Вроде yt-dlp предварительно не рассчитывает. Или я ошибаюсь...
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да, берется информация у yt-dlp

Для ВК - погрешность довольно большая - около 10-20% (обычно в большую сторону), для YT - погрешность небольшая.

0
Автор поста оценил этот комментарий

Было бы классно иметь возможность получить видео без тестового описания. Чтобы его сразу отправить, а не скачивать и заново загружать в тг

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

подумаю над этим

показать ответы
2
Почему бы и ДА !!!
Автор поста оценил этот комментарий

Отличный бот, но я в основном музыку качаю с ютуба. Можно прикрутить выбор качества музыки?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

есть ситуации, когда нужно качество ниже?

показать ответы
2
Автор поста оценил этот комментарий

Не знаю как сделан конкретно данный бот, но я всем таким не пользуюсь.
Держите https://github.com/yt-dlp/yt-dlp
P. S. Поддерживает Sponsorblock API.
Пример: yt-dlp -x --audio-format mp3 --sponsorblock-remove sponsor [url]
Для конвертации требуется ffmpeg. Если у Вас андроид, спокойно заведется в Termux.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

да, бот использует именно yt-dlp, поддержку sponsorblock - добавим

0
Автор поста оценил этот комментарий

Названия треков бы поправить. А то xfucdyRyub, вместо названия песни -- такое себе

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

спасибо за предложение, сделаем

1
Автор поста оценил этот комментарий

не качает видео из ВК в группах, которые не в общем доступе. Хотя я в этой группе есть, но бот сказал, что не умеет

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да, непубличные видео скачивать бот не может

показать ответы
0
Автор поста оценил этот комментарий

если понадобится распараллелить или скорость загрузки через голый ytdlp будет низкой - посмотри aria2c

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

ytdlp уже из коробки поддерживает распределенную загрузку: параметр

--concurrent-fragments
0
Автор поста оценил этот комментарий
Спасибо за бота, штука нужная. Вот только решил скачать старый видос на 2 минуты и уже 5 минут идёт заставка в ёлочку и надпись загружаю данные
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо, это "пикубу-эффект", я починю

показать ответы
0
Автор поста оценил этот комментарий
Реклама/обязательные подписти или другие способы монетизации будут?
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

пока так далеко не заглядывал, если честно.

но навязчивой рекламы, "финок НКВД" и обязательных подписок - точно не будет

показать ответы
0
Автор поста оценил этот комментарий
А плейлистами умеет качать?
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

показать ответы
0
Автор поста оценил этот комментарий
Рутуб прикрутите плиз ещё
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да, это есть в планах

0
Автор поста оценил этот комментарий

А внутренний поиск по ютуб прям через бота реально сделать? Чтобы не искать и не вставлять ссылки?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

спасибо за идею, подумаю

0
Автор поста оценил этот комментарий

А почему трансляции с Ютуба не даёт скачивать? Не только ваш бот, но и у других тоже столкнулся с такой проблемой.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

трансляции можно скачать только по завершению.

до этого момента видео считается "не законченным" и ютуб не даёт их скачать.

0
Автор поста оценил этот комментарий

Я думал что информация о файле из телеги будет записана в название файла и в теги.

Наверное многого хочу)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

я поправлю имя файла

показать ответы
0
Автор поста оценил этот комментарий

а если видео в личку скинули - тоже скачает?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

нет

0
Автор поста оценил этот комментарий
а почему из тиктока нельзя?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

поддержка тиктока тоже есть в планах

показать ответы
0
Автор поста оценил этот комментарий

Бот - огонь!
Почитал как реализован, на Хабре.
Как я ожидал что по-проще все будет :)))
А у тебя и кубер, и докер…
Классная работа, спасибо!

Поправь только, там в описании опечатка есть…

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Спасибо

0
Автор поста оценил этот комментарий
Вроде уже есть
Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Да, я в курсе про этот бот, и он очень крутой, но он не поддерживает скачивание из ВК (только в платной версии).

показать ответы
1
Автор поста оценил этот комментарий

Я как-то с Zen'а видео скачать пытался. Скачал, но было очень заморочно.
Может, стоит к нему присмотреться.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

спасибо за предложение, подумаем

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества