Проблемы, загружающие плей-лист с помощью youtube-dl

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

elshahen@elshahen-LAB:~$ youtube-dl -cit https://www.youtube.com/playlist?list=PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2
[youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Downloading page #1
WARNING: [youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Playlist page is missing OpenGraph title, falling back ...
ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type  youtube-dl -U  to update.
19
задан 22 September 2015 в 19:29

4 ответа

У меня была эта проблема .. Попробуйте вот так ...

Удалить старую версию youtube-dl

sudo apt-get remove -y youtube-dl

Скачать последнюю версию с официального сайта

sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl

Изменить разрешение загружаемого файла

sudo chmod a+x /usr/local/bin/youtube-dl

Проверьте эту ссылку для более подробной информации.

Надеюсь, это поможет вам ..

31
ответ дан 23 November 2019 в 01:57

Используйте ppa webUpd8: ppa:nilarimogard/webupd8

Это всегда содержит большую часть up2date версии.

sudo apt-get remove youtube-dl
sudo apt-add-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install youtube-dl
6
ответ дан 23 November 2019 в 01:57

Я пытался загрузить плей-лист в Вашем вопросе, и я получил то же сообщение об ошибке, которое Вы сделали. Вместо того, чтобы обновлять youtube-dl, который хорошо работает способ, которым это, я перешел к Вашей веб-странице плей-листа, скопировал URL и выполнил следующие команды от терминала:

sudo apt install jq # command-line JSON processor    
cd Desktop/    
youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt  

Результатами этих команд был список всех ссылок на ту веб-страницу. Я сделал пакетный файл со списком URL всех видео в нем (только видео, не другие ссылки), каждого видео URL на новой строке. После этого я мог загрузить все видео единственной командой путем следования этим инструкциям.

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

    youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt 
    
  2. От выполненного терминала:

    youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'
    
  3. Это - основная команда, однако также необходимо добавить форматы видео, которые Вы хотите загрузить, или иначе можно загрузить видео форматами, которые Вы не хотели. Поэтому сначала моделируйте свою загрузку, чтобы видеть, доступен ли формат, который Вы хотите:

    youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'
    
  4. Если формат видео не будет доступен, то Вы получите сообщение об ошибке, в котором говорится: requested format not available. Если формат видео будет доступен, то Вы не получите сообщения об ошибке, когда Вы будете использовать --simulate опция. Можно также добавить -F опция видеть все допустимые форматы как это:

    youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'
    
  5. В вышеупомянутой команде я использовал общий flv формат видео на 360 пунктов: -f 34. Вы могли бы предпочесть пробовать flv формат видео на 480 пунктов при помощи -f 35. После добавления формата видео, который Вы хотите к команде, команда становится чем-то вроде этого:

    youtube-dl -f 35 -ciw -o "%(title)s.%(ext)s" --batch-file='/path/to/batch-file.txt'  
    

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

5
ответ дан 23 November 2019 в 01:57

Я использовал ниже кода

youtube-dl -cit https://www.youtube.com/playlist?list=PL55RiY5tL51pIQNcOLDjnaQJYuj_GjVSz

Даже после обновления я получил подобную ошибку. Так, вместо '-белоручки' я использовал '-citv', и он работал.

youtube-dl -cit https://www.youtube.com/playlist?list=PL55RiY5tL51pIQNcOLDjnaQJYuj_GjVSz
0
ответ дан 23 November 2019 в 01:57

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

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