Как скачать плейлисты на 360p с помощью youtube-dl? [dубликат]

Я использую youtube-dl для загрузки файлов с YouTube. Я попытался загрузить несколько файлов, но это не работает для меня. Мне нужно открыть несколько терминалов и начать заново каждый раз, когда я хочу загрузить видео.

Можете ли вы помочь мне загрузить несколько файлов с помощью одного окна терминала, просто указав сразу все URL-адреса? Я использую Ubuntu 12.04 64-bit.

30
задан 19 August 2017 в 07:30

12 ответов

Вы можете поместить URL-адреса один за другим с промежутком между ними. Youtube-dl будет загружать их последовательно.

Обратите внимание, что -help говорит youtube-dl --help Usage: youtube-dl [options] url [url...]

Пример ввода:

corey in /media/Media/Videos$ youtube-dl http://www.youtube.com/watch?v=fqULJBBEVQE http://www.youtube.com/watch?v=vDbbz-BdyYc http://www.youtube.com/watch?v=OrIFaWJ9Glo

Пример вывода:

[youtube] Setting language [youtube] fqULJBBEVQE: Downloading video webpage [youtube] fqULJBBEVQE: Downloading video info webpage [youtube] fqULJBBEVQE: Extracting video information [download] Destination: Web Components - A Tectonic Shift for Web Development - Google I_O 2013-fqULJBBEVQE.mp4 [download] 100% of 238.14MiB in 36:54 [youtube] vDbbz-BdyYc: Downloading video webpage [youtube] vDbbz-BdyYc: Downloading video info webpage [youtube] vDbbz-BdyYc: Extracting video information [download] Paul Irish on Web Application Development Workflow-vDbbz-BdyYc.mp4 has already been downloaded [youtube] OrIFaWJ9Glo: Downloading video webpage [youtube] OrIFaWJ9Glo: Downloading video info webpage [youtube] OrIFaWJ9Glo: Extracting video information [download] Got server HTTP error. Retrying (attempt 1 of 20)... [download] Destination: Single Page Web Applications - JavaScript End-to-End (The Hard Stuff)-OrIFaWJ9Glo.mp4 [download] 100% of 553.10MiB in 42:17
8
ответ дан 18 July 2018 в 09:33

наиболее простым решением будет создание сценария bash, подобного этому

#!/bin/bash terminal=`tty` exec < ~/Documents/youtubevideolinks.txt while read -r line do cd ~/Desktop/TilakDa/ youtube-dl -f 18 "$line" done exec < "$terminal"

, просто скопируйте и вставьте видео-ссылки в этом txt-файле в папку с каждым URL-адресом видео в новой строке и запустите это script наиболее простым решением будет создание скрипта bash, подобного этому По умолчанию опция -f 18 предназначена для видео 360p

1
ответ дан 18 July 2018 в 09:33

Ярлыки

Если все видео находятся в одном и том же списке воспроизведения или том же канале, вы можете сэкономить время, используя следующие ярлыки.

Список воспроизведения

youtube-dl -f FORMAT -ci <url-of-playlist>

... где <url-of-playlist> заменяется URL-адресом плейлиста и заменяет FORMAT любым доступным видеоформатом, например 18.

Воспроизведение видео в начале воспроизведения

youtube-dl -f FORMAT -ci --playlist-start NUMBER <url-of-playlist>

... где <url-of-playlist> заменяется URL-адресом плейлиста, замените FORMAT на любой доступный формат видео, например 18, а NUMBER - номер видео

Канал

youtube-dl -f FORMAT -citw -v <url-of-channel>

... где <url-of-channel> заменяется URL-адресом канала и заменяет FORMAT любым доступным видео Например, 18.

Видео не в одном и том же плейлисте или канале

Сначала создайте командный файл, который представляет собой текстовый файл, содержащий список URL-адресов видео с YouTube, вы хотите скачать. URL-адреса должны быть упорядочены в списке, имеющем только один URL-адрес, и ничем больше в каждой строке, с новой строкой для каждого URL-адреса в списке. Сохраните командный файл с именем, которое легко запомнить как batch-file.txt. Если несколько файлов находятся на одной и той же веб-странице на YouTube, вы можете создать текстовый файл со списком со всеми ссылками на этой странице, выполнив следующую команду:

lynx --dump -listonly "URL-of-YouTube-webpage" > batch-file.txt

От терминала :

youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'

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

youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'

Если видеоформат недоступен, вы получите сообщение об ошибке: requested format not available. Если видеоформат доступен, вы не получите сообщение об ошибке при использовании опции --simulate. Вы также можете добавить опцию -F, чтобы увидеть все допустимые форматы, такие как:

youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'

В третьей команде я использовал общий формат видео FLV 360p: -f 34. Возможно, вы захотите попробовать видеоформат flv 480p, используя -f 35. Поэтому после того, как вы добавили видеоформат, который вы хотите выполнить, команда будет выглядеть примерно так:

youtube-dl -cit -f 35 --batch-file='/path/to/batch-file.txt'

Примечания:

Я не добавил --simulate option для последней команды, поэтому эта команда будет выполнена для реального.

35
ответ дан 18 July 2018 в 09:33

Если у вас несколько URL-адресов видео, просто добавьте их в один список воспроизведения в свой список воспроизведения YouTube, создав новый или используя существующий.

Затем используйте команду ниже.

youtube-dl -f FORMAT --yes-playlist [url-of-playlist]

Опция --yes-playlist загрузит список воспроизведения, если URL-адрес относится к видео и списку воспроизведения.

Это самый простой и быстрый вариант, который я нашел для своей цели загрузки сотен видео с веб-сайта у которого были видеоролики, связанные с YouTube.

2
ответ дан 18 July 2018 в 09:33

шаг 1: перейдите на рабочий стол и создайте текстовый документ с именем list (или любым другим именем). Скопируйте и вставьте URL-адреса, если файлы, которые вы хотите загрузить в файл, по одному URL на строку

шаг 1: откройте терминал и перейдите на рабочий стол

cd Desktop

шаг 1: , чтобы загрузить файлы в вашем списке, введите (замените list соответственно, если вы назвали свой файл чем-то другим)

youtube-dl -a list

] шаг 1:

Запустить эту команду

youtube-dl -citk –format mp4 –yes-playlist VIDEO_PLAYLIST_LINK -c возобновить частично загруженные файлы -i игнорировать любые ошибки. -t используйте название видео в качестве имени файла. -k сохраняйте видео на диске после завершения последующей обработки. --format mp4 сохранить видеофайлы в формате MP4. --yes-playlist подтверждает, что следующий URL-адрес указывает на список воспроизведения видео.
1
ответ дан 18 July 2018 в 09:33

Чтобы загрузить несколько видеороликов, вы можете использовать эту структуру. Это похоже на ответ @ coreyb с добавлением, что вы можете использовать его в другом месте в bash, например, с эхом. Вот два способа:

Брекеты

youtube-dl -f FORMAT {url1,url2,url...}

Брекеты

youtube-dl -f FORMAT url1; !:- url2; !:-url...
1
ответ дан 18 July 2018 в 09:33

Вы можете поместить URL-адреса один за другим с промежутком между ними. Youtube-dl будет загружать их последовательно.

Обратите внимание, что -help говорит youtube-dl --help Usage: youtube-dl [options] url [url...]

Пример ввода:

corey in /media/Media/Videos$ youtube-dl http://www.youtube.com/watch?v=fqULJBBEVQE http://www.youtube.com/watch?v=vDbbz-BdyYc http://www.youtube.com/watch?v=OrIFaWJ9Glo

Пример вывода:

[youtube] Setting language [youtube] fqULJBBEVQE: Downloading video webpage [youtube] fqULJBBEVQE: Downloading video info webpage [youtube] fqULJBBEVQE: Extracting video information [download] Destination: Web Components - A Tectonic Shift for Web Development - Google I_O 2013-fqULJBBEVQE.mp4 [download] 100% of 238.14MiB in 36:54 [youtube] vDbbz-BdyYc: Downloading video webpage [youtube] vDbbz-BdyYc: Downloading video info webpage [youtube] vDbbz-BdyYc: Extracting video information [download] Paul Irish on Web Application Development Workflow-vDbbz-BdyYc.mp4 has already been downloaded [youtube] OrIFaWJ9Glo: Downloading video webpage [youtube] OrIFaWJ9Glo: Downloading video info webpage [youtube] OrIFaWJ9Glo: Extracting video information [download] Got server HTTP error. Retrying (attempt 1 of 20)... [download] Destination: Single Page Web Applications - JavaScript End-to-End (The Hard Stuff)-OrIFaWJ9Glo.mp4 [download] 100% of 553.10MiB in 42:17
8
ответ дан 24 July 2018 в 19:22

наиболее простым решением будет создание сценария bash, подобного этому

#!/bin/bash terminal=`tty` exec < ~/Documents/youtubevideolinks.txt while read -r line do cd ~/Desktop/TilakDa/ youtube-dl -f 18 "$line" done exec < "$terminal"

, просто скопируйте и вставьте видео-ссылки в этом txt-файле в папку с каждым URL-адресом видео в новой строке и запустите это script наиболее простым решением будет создание скрипта bash, подобного этому По умолчанию опция -f 18 предназначена для видео 360p

1
ответ дан 24 July 2018 в 19:22

Ярлыки

Если все видео находятся в одном и том же списке воспроизведения или том же канале, вы можете сэкономить время, используя следующие ярлыки.

Список воспроизведения

youtube-dl -f FORMAT -ci <url-of-playlist>

... где <url-of-playlist> заменяется URL-адресом плейлиста и заменяет FORMAT любым доступным видеоформатом, например 18.

Воспроизведение видео в начале воспроизведения

youtube-dl -f FORMAT -ci --playlist-start NUMBER <url-of-playlist>

... где <url-of-playlist> заменяется URL-адресом плейлиста, замените FORMAT на любой доступный формат видео, например 18, а NUMBER - номер видео

Канал

youtube-dl -f FORMAT -citw -v <url-of-channel>

... где <url-of-channel> заменяется URL-адресом канала и заменяет FORMAT любым доступным видео Например, 18.

Видео не в одном и том же плейлисте или канале

Сначала создайте командный файл, который представляет собой текстовый файл, содержащий список URL-адресов видео с YouTube, вы хотите скачать. URL-адреса должны быть упорядочены в списке, имеющем только один URL-адрес, и ничем больше в каждой строке, с новой строкой для каждого URL-адреса в списке. Сохраните командный файл с именем, которое легко запомнить как batch-file.txt. Если несколько файлов находятся на одной и той же веб-странице на YouTube, вы можете создать текстовый файл со списком со всеми ссылками на этой странице, выполнив следующую команду:

lynx --dump -listonly "URL-of-YouTube-webpage" > batch-file.txt

От терминала :

youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'

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

youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'

Если видеоформат недоступен, вы получите сообщение об ошибке: requested format not available. Если видеоформат доступен, вы не получите сообщение об ошибке при использовании опции --simulate. Вы также можете добавить опцию -F, чтобы увидеть все допустимые форматы, такие как:

youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'

В третьей команде я использовал общий формат видео FLV 360p: -f 34. Возможно, вы захотите попробовать видеоформат flv 480p, используя -f 35. Поэтому после того, как вы добавили видеоформат, который вы хотите выполнить, команда будет выглядеть примерно так:

youtube-dl -cit -f 35 --batch-file='/path/to/batch-file.txt'

Примечания:

Я не добавил --simulate option для последней команды, поэтому эта команда будет выполнена для реального.

35
ответ дан 24 July 2018 в 19:22

Если у вас несколько URL-адресов видео, просто добавьте их в один список воспроизведения в свой список воспроизведения YouTube, создав новый или используя существующий.

Затем используйте команду ниже.

youtube-dl -f FORMAT --yes-playlist [url-of-playlist]

Опция --yes-playlist загрузит список воспроизведения, если URL-адрес относится к видео и списку воспроизведения.

Это самый простой и быстрый вариант, который я нашел для своей цели загрузки сотен видео с веб-сайта у которого были видеоролики, связанные с YouTube.

2
ответ дан 24 July 2018 в 19:22
  • 1
    Это полезно для загрузки большого количества видео с одного и того же канала. Вы можете использовать список воспроизведения, не включенный в список, – qwr 23 April 2018 в 21:39

шаг 1: перейдите на рабочий стол и создайте текстовый документ с именем list (или любым другим именем). Скопируйте и вставьте URL-адреса, если файлы, которые вы хотите загрузить в файл, по одному URL на строку

шаг 1: откройте терминал и перейдите на рабочий стол

cd Desktop

шаг 1: , чтобы загрузить файлы в вашем списке, введите (замените list соответственно, если вы назвали свой файл чем-то другим)

youtube-dl -a list

] шаг 1:

Запустить эту команду

youtube-dl -citk –format mp4 –yes-playlist VIDEO_PLAYLIST_LINK -c возобновить частично загруженные файлы -i игнорировать любые ошибки. -t используйте название видео в качестве имени файла. -k сохраняйте видео на диске после завершения последующей обработки. --format mp4 сохранить видеофайлы в формате MP4. --yes-playlist подтверждает, что следующий URL-адрес указывает на список воспроизведения видео.
1
ответ дан 24 July 2018 в 19:22
  • 1
    -citk очень вводит в заблуждение и может привести к ошибкам. -c возобновляет работу, даже если это не имеет большого смысла. Значение по умолчанию уже продолжено. -i может быть в порядке, но будьте осторожны, что вы можете пропустить ошибки в некоторых видео. -t уже по умолчанию и устарел. -k не имеет смысла с -f mp4. Подробнее см. [D0] youtube-dl FAQ . – phihag 24 January 2018 в 19:02

Чтобы загрузить несколько видеороликов, вы можете использовать эту структуру. Это похоже на ответ @ coreyb с добавлением, что вы можете использовать его в другом месте в bash, например, с эхом. Вот два способа:

Брекеты

youtube-dl -f FORMAT {url1,url2,url...}

Брекеты

youtube-dl -f FORMAT url1; !:- url2; !:-url...
1
ответ дан 24 July 2018 в 19:22

Другие вопросы по тегам:

Похожие вопросы: