Содержание

Скачиваем музыку с YouTube

Можно долго мучаться с сотнями сайтов-клонов, которые уверяют, что именно они скачают вам данные с YouTube в самом высоком качестве, но на выходе получать в лучшем случае mp3-файл с битрейтом в 128-196kbps. Поэтому лучше взять дело в свои руки и воспользоваться утилитой yt-dlp.

  1. Для начала скачиваем yt-dlp.exe1)
  2. Чтобы воспользоваться утилитой, нужно открыть консоль (cmd.exe или powershell) и выполнять команды именно в той папке, в которую скачали yt-dlp.exe

Примеры команд

:bulb: Заменяем <you_tube_link> на свою ссылку

yt-dlp -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio <you_tube_link>

Если видео содержит главы, можно сразу разбить их на отдельные файлы:

yt-dlp -f "bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v --extract-audio --split-chapters <you_tube_link>

На выходе получим файлы в формате opus. Если хочется получить mp3, то используйте ключи –audio-quality 0 –audio-format mp3, но я бы рекомендовал этого не делать, если не хотите жертвовать качеством.

Справка по другим ключам утилиты

НОВОЕ Дополнение от 03.05.2024

Ниже пример функции для PowerShell, которая предусматривает скачивание по команде yt-music -YoutubeLink <ссылка>, добавляет теги с исполнителем, альбомом, номером треков и скачиванием обложки ;-)

Function yt-music {
param(
[Parameter (Mandatory = $true)] [String]$YoutubeLink
)
yt-dlp -f "bestaudio/best" -ciw -o "%(playlist_title)s/%(playlist_autonumber)02d - %(title)s.%(ext)s" -o "thumbnail:" --write-thumbnail --extract-audio $YoutubeLink `
		--embed-metadata `
		--parse-metadata ":(?P<meta_synopsis>)" `
		--parse-metadata ":(?P<meta_purl>)" `
		--parse-metadata ":(?P<meta_comment>)" `
		--parse-metadata ":(?P<meta_description>)" `
		--parse-metadata "upload_date:(?P<meta_date>^\d{4})" `
		--parse-metadata "playlist_index:%(track_number)s" `
		--replace-in-metadata "artist" "(,[\s\w]).*" ""
}
1)
Если у нас система Windows, для других систем ссылки на странице репозитория