2017-02-12 7 views
0

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

Можно ли вызывать youtube-dl и загружать видео (из плейлиста с архивом ...) и сохранять извлечение MP3 в подпапку под названием «MP3».

youtube-dl --download-archive "F:\Videos\Online Videos\Comics 
Explained\Marvel Major Storylines (Constantly Updated)\Marvel Major 
Storylines Archive.txt" 
"https://www.youtube.com/playlist?list=PL9sO35KZL50yZh5dXW-7l93VZp7Ct4vYA" 
-o "F:\Videos\Online Videos\Comics Explained\%(playlist_title)s\%(title)s.%(ext)s" -f 
"bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" 
--ffmpeg-location "H:\Documents\FFMpeg\bin" 

Тогда -x --audio-format mp3 --audio-quality 320k

Но - я хочу аудио для вывода:

"F:\Videos\Online Videos\Comics Explained\%(playlist_title)s\MP3\%(title)s.%(ext)s" 
+0

Я близок к завершению код для этого, но не может выводить отдельные ссылки на видео 'с youtube_dl.YoutubeDL (ydl_opts) как YDL: «»» код здесь следует перечислить URLs каждого видео а vLinks переменная ''» для VLink в vLinks: info_dict = ydl.extract_info (ссылка, скачать = False) video_title = info_dict.get ('название', None) PLAYLIST_INDEX = info_dict.get ('' PLAYLIST_INDEX , None) playlist = info_dict.get ('playlist', None) uploader = info_dict.get ('uploader', Нет) print (video_title) ' –

ответ

1

Есть несколько способов сделать это:

  • Do аудио преобразования себя, вызывая --exec со своим скриптом, который создает необходимые каталоги, а затем вызывает avconv, ffmpeg , vlc или около того.
  • Запустите youtube-dl дважды с различными параметрами - один раз для видео, один раз для звука. Вы загрузите немного больше данных, но во многих случаях (особенно при загрузке с YouTube вместо других сайтов) только аудио будет загружаться дважды, видео только один раз.
  • Запустите youtube-dl дважды с теми же параметрами -o: один раз, чтобы загрузить файлы (перейдите в -k, чтобы сохранить оригиналы в вашем случае), один раз для преобразования в mp3. В большинстве случаев дополнительная загрузка не потребуется во второй раз. Затем напишите небольшой скрипт, который перемещает mp3-файлы в правильном направлении и очищает.
+0

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

+0

'с youtube_dl.YoutubeDL (ydl_opts) как YDL: «»« код здесь должен Перечислить URL каждого видео, как vLinks переменная „“» для VLink в vLinks: info_dict = ydl.extract_info (ссылка, скачать = False) video_title = info_dict.get ('название', None) PLAYLIST_INDEX = info_dict.get ('PLAYLIST_INDEX' нет) плейлист = info_dict.get (» playlist ', None) uploader = info_dict.get (' uploader ', None) print (video_title) ' –

+0

@StackJohan У вас, кажется, новый вопрос. Не стесняйтесь спрашивать об этом, ну, как новый вопрос (http://stackoverflow.com/questions/ask). Обязательно включите [полный, полный, полный код] (https://stackoverflow.com/help/mcve).Я понятия не имею, что такое 'vLinks', но если вы хотите загрузить плейлист, просто вызовите youtube-dl с этим идентификатором списка воспроизведения. – phihag

 Смежные вопросы

  • Нет связанных вопросов^_^