Это простой модуль для powershell, позволяющий легко скачивать песни и плейлисты с популярных сайтов.
При скачивании в файлы автоматически будет вставлены все доступные метаданные (альбом, исполнитель, название, год выпуска и т.д.), а также обрезанная до квадрата обложка альбома (если она доступна, а скачиваемый сорс-файл одного из форматов: .mp3, .m4a, .m4b, .m4p, .m4v, .mp4
- что является правдой в большинстве случаев)
Запустите следующую команду для установки зависимостей (вам понадобится choco
)
choco install youtube-dl ffmpeg imagemagick.app atomicparsley -y
Затем установите сам модуль
install-module -name pwsh-download-songs
Скорее всего, вы не сможете пользоваться модулем, так как он имеет самоподписанный сертификат, который считается недоверенным. Есть 2 варианта, как решить эту проблему:
- Выполнить команду
(get-module pwsh-download-songs).path
Затем пройти по выданному пути (для меня это было C:\dev\projects\pwsh\pwsh-download-songs\pwsh-download-songs.psm1
), открыть свойства файла pwsh-download-songs.psm1
, нажать на вкладку "Цифровые подписи" и вручную сделать сертификат доверенным.
- Или же позволить запускать недоверенные скрипты и модули, для этого пропишите следующую команду, которая изменит Execution Policy
Set-ExecutionPolicy RemoteSigned
Чтобы посмотреть помощь из консоли, используйте следующую команду powershell
get-help download-songs -full
download-songs [-url] <String[]> [[-format] <String[]>] [-noPlaylist] [-saveThumbs] [-seeFormats] [<CommonParameters>]
-url <String[]> - url, откуда скачивать.
-format <String[]> - запрашиваемый формат. Используйте параметр -seeFormats для того, чтобы посмотреть, какие форматы доступны, ничего не скачивая
Этот есть в youtube-dl, поэтому смотрите -f параметр и его документацию.
По умолчанию "m4a/mp3/bestaudio"
.
-noPlaylist - скачивать ли песню/видео, если URL указывает одновременно и на песню/видео, и на плейлист. По умолчанию $false
. Смотрите youtube-dl --no-playlist параметр.
-saveThumbs - сохранять ли скачанные картинки альбомов после завершения команды. По умолчанию $false
.
-seeFormats - если $true
, то ничего не будет скачиваться, а команда покажет для загрузки доступные форматы. По умолчанию $false
.
Скачать песню Yxngxr1 - Falling 4 U в стандартном формате .m4a
из плейлиста на YouTube Music
download-songs -noPlaylist "https://music.youtube.com/watch?v=jCcGMtGRw5s&list=PLv5tSVP9eg2nkbqapepgxXYGCESsfLcu9"
Вывести все доступные форматы для песни Psycho из альбома Yxngxr1 - I Don't Suit Hats на YouTube Music
download-songs -seeFormats -noPlaylist "https://www.youtube.com/watch?v=3ITW3pWaoWQ&list=OLAK5uy_mmO6QLOUTnk7GWFp_CVKH7B0gDgpGJI1A&index=2"
Скачать весь плейлист Yxngxr1 на YouTube Music (несмотря на то, что url также указывает на трек), а также сохранить обложки альбомов всех песен
download-songs -saveThumbs "https://music.youtube.com/watch?v=jCcGMtGRw5s&list=PLv5tSVP9eg2nkbqapepgxXYGCESsfLcu9"
Соответственно
choco uninstall youtube-dl ffmpeg imagemagick.app atomicparsley -y
remove-module -name pwsh-download-songs