Форум русскоязычного сообщества Ubuntu


Автор Тема: youtube-dl Масовое скачивание видео с youtube.com  (Прочитано 17370 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн livanda

  • Автор темы
  • Участник
  • *
  • Сообщений: 167
  • За мной будущее! А что за вами?
    • Просмотр профиля
    • Вка
Всем доброго времени суток. Я в  интернете не нашла ни какой информации об том как скачать массово видео с ютуба на линукс. По этому решила сделать маленький гайд. По такому приложению как youtube-dl. Многие пользователи спросят зачем это нужно в интернете есть сайты туда вставляешь ссылку и скачиваешь любое видео. На что я скажу да есть такие сайты. Но эти сайты ничего не стоят сравнению с этой программой. Данная программа отсутствуют в стандартный репазиториях   ubuntu по этому чтобы вы могли ее установить это можно сделать то сюда выполнив простые команды
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
Если коротко что может это программа
1. Скачивать само видео с youtube
2. Массово скачивать весь канал с youtube. Если оно вам нужно
3. Массово скачать весь плей лист Любого пользователя
4. При скачивание указать формат файла его частоту кадров и тд.
5. Так же если оно вам нужно можно скачать и в формате mp3 также и канал и плей лист. Как вам угодно.
6. Более того что уже важно мне ей можно указать древо каталогов. То есть
«/home/user/Video/youtube/Канал_Пользователя/Плейлист/Само_видео_ С_котиком.mp4»
____
Как видите возможностей у нее много и это не весь список что я тут перечислила. На самом деле и ха много больше если набрать команду
youtube-dl -helpТо вы увидите куда более широкие ее возможности. Но пользоваться ей очень легко. Ниже я приведу самый простой пример который мне пришел только, в голову.
youtube-dl --ignore-errors -o /home/user/Video/youtube/'%(uploader)s/%(playlist)s/%(title)s'.mp4 https://www.youtube.com/user/ArtSorax/playlists теперь давайте посмотрим что тут программа тут сделает
--ignore-errors — этот пункт отвечает как уже понятно из названия пропуск ошибок, не важно каких скажем на видео наложено ограничения по странам и или его удалили… В этом случаии она пропустит и пойдет качать дальше
-o  - тут мы указываем путь для куда сохранять сами видео файлы.
%(uploader)s  Тут он подставить само название канала.
%(playlist)s    А вот тут имя плей листа
%(title)s        Ну и названия самого видео файла. Название сохранится без расширения по этому его лучше пописать по умолчанию кодировка видео идет в формате mp4.
.%(ext)s,   Но если нужно можно сделать его динамическим в зависимости от кодировки. Если вам это нужно.
Ну и в конце в моем примере идет ссылка на канал и с указанием что все видео он скачивал из плей листов.
Должна отметить что он качает все в высокой четкости по умолчанию.
Все это очень хорошо. И полезно, но что если мне будет нужно скажем скачать другого разрешения или формата. Предположим у меня старый или мало мощный компьютер, а может я хочу это видео себе на телефон. Для этого мня поможет параметр -F данная команда будет выводить видео какие есть на данном канале.
youtube-dl -F https://www.youtube.com/watch?v=0QudXUs_vq0И ниже программа выдает список всех форматов и кодировок что есть, и все что под маркеровкой "DASH" идут отдельно звуковая дорожка и видео файл.
(Нажмите, чтобы показать/скрыть)
Но все что идут под маркировкой small, medium и hd720 уже со звуковой дорожкой.
(Нажмите, чтобы показать/скрыть)
Теперь мне нужно выбрать формат и замер экрана. Предположим я хочу скачать видео для старого мобильного телефона. В формате 3gp и с разрешением 176x144 пикселей.
В самой начале строки есть цифры.
(Нажмите, чтобы показать/скрыть)
вот эти цифры указывают какое видео я хочу скачать. Чтобы программа мне его скачала
Я должна указать параметр -f c нужным мне префиксом, в моем случае это будет 17.
youtube-dl --ignore-errors -f 17 -o /home/user/Video/youtube/'%(uploader)s/%(playlist)s/%(title)s'.3gp https://www.youtube.com/watch?v=0QudXUs_vq0Все это конечно очень хорошо и удобно. Но очень много кода. Не понятных закорючек, и буковок. И запомнить все это будет очень сложно, простому человеку, а новичку понять и написать все это правильно. Для можно сделать простой скрипт, для автоматизации такой "страшной работы".
#!/bin/bash
DIR="ПАПКА ГДЕ БУДЕТ ЛЕЖАТЬ НАШЕ ВИДЕО"
URL1="https://www.youtube.com/watch?v=0QudXUs_vq0"
CODEC="17"
# В CODEC="17" За место 17 подставьте нужное вам значения

        youtube-dl --ignore-errors -f $CODEC -o "$DIR"'%(uploader)s/%(playlist)s/%(title)s.%(ext)s,' "$URL1"






######
И что зачем нам это нужно? Вы еще рас спросите. А затем что если вы куда-то хотите поехать или еще по каким причинам у вас не будет доступа к интернету. То вы можете спокойно смотреть видео офлайн. Ваших любимых котиков и или летсплейщиков. Ну ил просто сделать бекап своего канала чтобы не хотите потерять дорого вам видео.
Гораздо проще поставить весь плей лист на закачку и пойти спокойно спать чем сидеть часами и все это кликать на каких либо ресурсах. И в БОЛЬШОЙ +  программа консольная.
PS...более Подробно смотрите man страницы или хелп… Я расписала  эту программу для новичков которые могут не понять что с ней делать. Или просто не знают что такая программа вообще существуют.


Большое спасибо за Внимание ^_^
Надеюсь кому-то я помогла кто искал такую информацию.
« Последнее редактирование: 17 Февраль 2016, 22:56:38 от livanda »

Оффлайн Punko

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 2535
  • Не пей вина, Гертруда...
    • Просмотр профиля
    • Личный блох
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #1 : 12 Февраль 2016, 02:36:23 »
livanda,
Тоже недавно познакомился с программой, за гайд спасибо.

Кстати, в репах 15.10, спокойно через апт-гет ставится.

Программа отличная, особенно радует её консольность и возможность повесить на хоткей (ну очень я люблю это дело =) )
Don't waste your time on coffins today!
Пишу на форуме строго пьяный!

Оффлайн livanda

  • Автор темы
  • Участник
  • *
  • Сообщений: 167
  • За мной будущее! А что за вами?
    • Просмотр профиля
    • Вка
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #2 : 12 Февраль 2016, 02:45:13 »
Punko,
ну я ее знаю давно. Она не раз меня спасала когда я знаю что за месяц не смогу за интернет заплатить а каналы смотрю. И вот как-то так. Как раз сейчас вот. Качаю несколько каналов и реши посмотреть обновления. Ну и на русском языке по нее вообще кот на плакал. А так хоть что-то будет.
На счет репазитория не знаю у меня 14.04.03 и пока обновятся не хочу и не буду. Но если есть это уже хорошо
« Последнее редактирование: 12 Февраль 2016, 02:49:00 от livanda »

Оффлайн Punko

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 2535
  • Не пей вина, Гертруда...
    • Просмотр профиля
    • Личный блох
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #3 : 12 Февраль 2016, 02:56:23 »
livanda,
Угу. У меня интернет есть всегда, в принципе, но захотелось принести пару видосов на флешке человеку со слабым интернетом вот и пришлось ковырять, чтоб лептоп не тянуть с собой. Может, еще чем-нибудь дополню топик.

Почитал ман, нашёл интересную опцию
--source-address
Насколько я понял, можно скачивать видео, которые недоступны для региона\страны, подставив нужный айпишник, не использую при этом прокси. Интересная фича.


Также интересная опция
--dateafterПозволяет загружать видео, которые были добавлены на канал после определённой даты. Так удобно сделать скрипт, запихнуть его в крон и пару раз в неделю ( в зависимости от живучести канала) обновлять себе локальное хранилище каналов, качая только свежее видео.
Don't waste your time on coffins today!
Пишу на форуме строго пьяный!

Оффлайн theurs

  • Активист
  • *
  • Сообщений: 384
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #4 : 12 Февраль 2016, 04:06:49 »
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl

так не работает /usr/local/bin/ надо переделать в

sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/bin/youtube-dl
sudo chmod a+rx /usr/bin/youtube-dl

Пользователь решил продолжить мысль [time]12 Февраль 2016, 04:10:45[/time]:
Для скачивания в действительно хорошем качестве, 1080 и больше надо использовать ключи -F(список всех дорожек) и -f x+y(номер видеодорожки+номер аудио) кроме того нужен пакет ffmpeg которого тоже нету в репозитории.


Пользователь решил продолжить мысль 12 Февраль 2016, 04:16:33:
Кстати, в репах 15.10, спокойно через апт-гет ставится.

В 14.04.3 тоже вроде есть в репе но устаревшая, неправильно работает.
« Последнее редактирование: 12 Февраль 2016, 04:16:33 от theurs »

Оффлайн Punko

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 2535
  • Не пей вина, Гертруда...
    • Просмотр профиля
    • Личный блох
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #5 : 12 Февраль 2016, 04:18:44 »
theurs,
Это ffmpeg`a нет в репозиториях?? Оо
Don't waste your time on coffins today!
Пишу на форуме строго пьяный!

Оффлайн theurs

  • Активист
  • *
  • Сообщений: 384
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #6 : 12 Февраль 2016, 05:18:17 »
theurs,
Это ffmpeg`a нет в репозиториях?? Оо
Нету. http://help.ubuntu.ru/wiki/ffmpeg

Оффлайн livanda

  • Автор темы
  • Участник
  • *
  • Сообщений: 167
  • За мной будущее! А что за вами?
    • Просмотр профиля
    • Вка
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #7 : 12 Февраль 2016, 12:49:27 »
theurs,
А зачем тебе ffmpeg? там же можно указать качество ? кстати есть еще mencoder. если нужно переконверитировать но я уже им давно не пользовалась андроид все отрывает и без какой либо конвертации 

Оффлайн theurs

  • Активист
  • *
  • Сообщений: 384
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #8 : 12 Февраль 2016, 12:56:14 »
theurs,
А зачем тебе ffmpeg? там же можно указать качество ? кстати есть еще mencoder. если нужно переконверитировать но я уже им давно не пользовалась андроид все отрывает и без какой либо конвертации 

Ютуб не дает скачивать качество больше 720р в собранном виде, только дорожки по отдельности, отдельно видео отдельно звук, ffmpeg нужен чтоб их соединить.

Оффлайн lin_user

  • Старожил
  • *
  • Сообщений: 1292
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #9 : 12 Февраль 2016, 14:38:25 »
Да, вещь отличная. Всем её рекомендую. Никакие мерзкие расширения для браузера не нужны.

Онлайн soarin

  • Старожил
  • *
  • Сообщений: 1332
  • ubuntu 16.04
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #10 : 13 Февраль 2016, 16:25:49 »
Punko,
Цитировать
Это ffmpeg`a нет в репозиториях?? Оо
В ubuntu 14.04 нету
А с этим вашим avconv я пару часов долбился из спортивного интереса, чтоб склеить аудио и видео с тытрубы из DASH формата..,
Так и не смог. Поставил ffmpeg - и элементарно всё сдедалал.

Оффлайн dstftw

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #11 : 14 Февраль 2016, 15:31:01 »
youtube-dl --ignore-errors -o /home/user/Video/youtube/'%(uploader)s/%(playlist)s/%(title)s'.mp4 https://www.youtube.com/user/ArtSorax/playlists
Правильнее указывать расширение также шаблоном, иначе возможны проблемы по части постпроцессинга:
-o '/home/user/Video/youtube/%(uploader)s/%(playlist)s/%(title)s.%(ext)s'
Почитал ман, нашёл интересную опцию
--source-address
Насколько я понял, можно скачивать видео, которые недоступны для региона\страны, подставив нужный айпишник, не использую при этом прокси. Интересная фича.
Только если этот IP на одном из ваших сетевых интерфейсов. Для прокси используется --proxy.

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

Более правильное решение для такого юз-кейса это использование --download-archive.

Для скачивания в действительно хорошем качестве, 1080 и больше надо использовать ключи -F(список всех дорожек) и -f x+y(номер видеодорожки+номер аудио) кроме того нужен пакет ffmpeg которого тоже нету в репозитории.

Не нужно ничего мудрить с -f x+y, по умолчанию это делается автоматически (скачивается лучшее видео, лучшее аудио и муксится) при наличии установленного ffmpeg.

я вообще то предпочитаю этот вариант от Рикардо Гарсия
https://github.com/rg3/youtube-dl
-- там и инструкция есть, по добавлению новых каналов для считывания и декодирования, и таким образом вы можете создать свой шаблон для считывания видео - с любого источника, и тд.

Это в точности та же программа, что лежит на yt-dl.org, да и Рикардо, с точки зрения разработки, уже лет 5 не при делах.

Оффлайн theurs

  • Активист
  • *
  • Сообщений: 384
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #12 : 14 Февраль 2016, 16:55:09 »
Для скачивания в действительно хорошем качестве, 1080 и больше надо использовать ключи -F(список всех дорожек) и -f x+y(номер видеодорожки+номер аудио) кроме того нужен пакет ffmpeg которого тоже нету в репозитории.

Не нужно ничего мудрить с -f x+y, по умолчанию это делается автоматически (скачивается лучшее видео, лучшее аудио и муксится) при наличии установленного ffmpeg.

У меня установлен ffmpeg. Пишу просто youtube-dl URL скачивается 720р. Пишу youtube-dl URL -F и вижу что там есть еще куча вариантов вплоть до 4К. Пишу youtube-dl URL -f x+y качается и склеивается то что запрошено. Версия последняя или около нее.

Оффлайн dstftw

  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #13 : 14 Февраль 2016, 19:54:29 »
Для скачивания в действительно хорошем качестве, 1080 и больше надо использовать ключи -F(список всех дорожек) и -f x+y(номер видеодорожки+номер аудио) кроме того нужен пакет ffmpeg которого тоже нету в репозитории.

Не нужно ничего мудрить с -f x+y, по умолчанию это делается автоматически (скачивается лучшее видео, лучшее аудио и муксится) при наличии установленного ffmpeg.

У меня установлен ffmpeg. Пишу просто youtube-dl URL скачивается 720р. Пишу youtube-dl URL -F и вижу что там есть еще куча вариантов вплоть до 4К. Пишу youtube-dl URL -f x+y качается и склеивается то что запрошено. Версия последняя или около нее.

Последняя это какая? Если "последняя" из репозиториев убунты, то значит не последняя. Последняя версия на момент написания этого поста - 2016.02.13. В любом случае лог с --verbose в студию.

dstftw,
ха ха - Рикарда автор! так что он в любом случае при делах, и только его контент есть единственный вариант расширения пунктов хранения видео.

!! всего час назад Рикардо обновил контент, так что ваши 5 лет как то не катят в принципе

Гит лог хотя бы глянули что-ли, прежде чем чушь нести: https://github.com/rg3/youtube-dl/commits/master?author=rg3.

Оффлайн livanda

  • Автор темы
  • Участник
  • *
  • Сообщений: 167
  • За мной будущее! А что за вами?
    • Просмотр профиля
    • Вка
Re: youtube-dl Масовое скачивание видео с youtube.com
« Ответ #14 : 14 Февраль 2016, 21:24:07 »
youtube-dl --ignore-errors -o /home/user/Video/youtube/'%(uploader)s/%(playlist)s/%(title)s'.mp4 https://www.youtube.com/user/ArtSorax/playlists
Правильнее указывать расширение также шаблоном, иначе возможны проблемы по части постпроцессинга:
-o '/home/user/Video/youtube/%(uploader)s/%(playlist)s/%(title)s.%(ext)s'
расширение указанно правильно и проблем не будет. И вообще bash  это за ошибку не считает  /home/user/Video/youtube/ или '/home/user/Video/youtube/'  моем Варианте нету синтаксичеких символов  или пробелов. чтобы bash посчитал это за команду так что все хорошо

 

Страница сгенерирована за 0.154 секунд. Запросов: 23.