Я использую youtube-dl для загрузки файлов с YouTube. Я пытался загрузить несколько файлов, но у меня ничего не вышло. Мне нужно открывать несколько терминалов и начинать заново каждый раз, когда я хочу скачать видео.
Можете ли вы помочь мне загрузить несколько файлов в одном окне терминала, просто упомянув все URL-адреса одновременно? Я использую Ubuntu 12.04 64-bit.
Если все видео находятся в одном плейлисте или на одном канале, вы можете сэкономить время, используя следующие ярлыки.
youtube-dl -f FORMAT -ciw -o "%(title)s.%(ext)s" -v <url-of-playlist>
... где
заменяется URL-адресом списка воспроизведения, а FORMAT
заменяется любым доступным видеоформатом, например 18
. Вы можете использовать опцию -F
, чтобы увидеть все допустимые форматы, например:
youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'
youtube-dl -f FORMAT -ci --playlist-start NUMBER --playlist-end NUMBER <url-of-playlist>
... где
заменяется URL-адресом списка воспроизведения, замените FORMAT
любым доступным видеоформатом, например 18
, а НОМЕР
- это номер видео в плейлисте для начала / завершения загрузки.
youtube-dl -f FORMAT -ciw -o "%(title)s.%(ext)s" -v <url-of-channel>
... где
заменяется URL-адресом канала и заменяется FORMAT
с любым доступным форматом видео, например 18
.
Сначала создайте пакетный файл, который представляет собой текстовый файл, содержащий список URL-адресов. видео с YouTube, которые вы хотите скачать. URL-адреса должны быть расположены в списке, имеющем только один URL-адрес и ничего больше в каждой строке, с новой строкой для каждого URL-адреса в списке. Сохраните командный файл с легко запоминающимся именем, например, batch-file.txt. Если несколько файлов находятся в одном плейлисте, канале или пользовательской веб-странице на YouTube, вы можете создать текстовый файл со списком, содержащим все ссылки на этой странице, выполнив следующую команду:
sudo apt install jq
youtube-dl -j --flat-playlist "https://<yourYoutubeWebpage>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > 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'
Если формат видео недоступен, вы получите сообщение об ошибке: запрошенный формат недоступен
. Если формат видео доступен, вы не получите никакого сообщения об ошибке при использовании опции - моделировать
. Вы также можете добавить параметр -F, чтобы увидеть все допустимые форматы, например:
youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'
В третьей команде я использовал общий видеоформат FLV 360p:
-f 34
. Вы можете предпочесть попробовать видеоформат flv 480p, используя -f 35
. Итак, после того, как вы добавили видеоформат, который вы хотите в команду, команда будет выглядеть примерно так:
youtube-dl -ciw -o "%(title)s.%(ext)s" --batch-file='/path/to/batch-file.txt'
Примечания:
Я не добавил параметр - simulate
к последней команде , так что эта команда будет выполнена по-настоящему.
Azonao atao tsirairay ny mametraka ny url, misy elanelana eo anelanelany. Youtube-dl dia hampidina azy ireo misesy. Somary tsotra kokoa io noho ny fanaovana rakitra maromaro.
Mariho ny lazain'ny --help
youtube-dl --help
Fampiasana: youtube-dl [options] url [url ...]
Fampidihana santionany:
youtube-dl http://www.youtube.com/watch?v=fqULJBBEVQE http://www.youtube.com/watch?v=vDbbz-BdyYc http://www.youtube.com/watch?v=OrIFaWJ9Glo
Famoahana santionany:
[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
Для загрузки нескольких видео вы можете использовать эту структуру. Он похож на ответ @ coreyb с той лишь разницей, что вы можете использовать его где-нибудь в bash, например, с echo. Вот два способа:
Фигурные скобки
youtube-dl -f FORMAT {url1,url2,url...}
Повторить последнюю команду без последнего аргумента
youtube-dl -f FORMAT url1; !:- url2; !:-url...
Чтобы загрузить несколько файлов с YouTube
Перейдите на рабочий стол и создайте текстовый документ с именем list
(или любым другим именем). Скопируйте и вставьте URL-адреса файлов, которые вы хотите загрузить, в файл, по одному URL-адресу в строке.
Откройте терминал и перейдите на рабочий стол
cd ~ / Desktop
Чтобы загрузить файлы из вашего списка, введите (замените list
соответствующим образом, если вы назвали свой файл другим именем)
youtube-dl -a list
Чтобы загрузить список воспроизведения YouTube
Выполните эту команду
youtube-dl -citk -format mp4 -yes-playlist VIDEO_PLAYLIST_LINK
-c
возобновите частично загруженные файлы -i
игнорируйте любые ошибки. -t
используйте заголовок видео в качестве имени файла. -k
сохранить видео на диске после завершения постобработки. - формат mp4
сохраняет видеофайлы как файлы MP4. - да-плейлист
подтверждает, что следующий URL указывает на список воспроизведения видео. Если у вас несколько URL-адресов видео, просто добавьте их в один список воспроизведения плейлиста YouTube, создав новый или используя существующий.
Тогда используйте команду ниже.
youtube-dl -f FORMAT --yes-playlist [url-of-playlist]
Вариант --да-плейлист
загрузит плейлист, если URL-адрес ссылается на видео и плейлист.
Это самый простой и быстрый вариант, который я нашел для своей цели, чтобы загрузить сотни видео с веб-сайта, на котором есть ссылки на видео с YouTube.
Введите команду, затем введите &&
и введите следующую команду, например:
youtube-dl--add-metadata -xic http://(the url) && youtube-dl--add-metadata -xic http://(the url)
самым простым решением было бы создать сценарий 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"
, просто скопируйте и вставьте ссылки на видео в этот текстовый файл в папку документов с каждым URL видео в новой строке и запустите этот скрипт
, он загрузит видео одно за другим
По умолчанию параметр -f 18
предназначен для видео 360p
Попробуйте использовать сценарий bash:
while read LL ; do youtube-dl "$LL" ; done < your_file
Тема все еще актуальна, поэтому:
?
использовать так :-)
youtube-dl.exe --yes-playlist https://www.youtube.com/watch?list= ваш список ссылка
У меня это работает.
youtube-dl -cit --format = mp4 - batch-file =. / list-of-youtube-videos-link.txt
- вот что сработало для меня, объединив https://askubuntu.com/a/947676/481688 и https : //askubuntu.com/a/334097/481688 решения. Я записываю его здесь отдельно, а не прокручиваю несколько ответов снова в будущем.
- batch-file =. / List-of-youtube-videos-link.txt
файл со списком ссылок на YouTube ] - format = mp4
желаемый вывод в формате mp4 -c
возобновить частично загруженные файлы -i
игнорировать любые ошибки. -t
использовать заголовок видео как имя файла.