Скрипт не актуален! Актуальную версию скрипта можно скачать здесь!
В предыдущем посте (тык) я в красках и с пруфами расписал насколько хороша Yt-dlp. Теперь пришло время испытать её в деле.
У меня уже была заготовка скрипта для скачивания видео. Я только заменил конечную утилиту и команды к ней, а ещё выкинул лишний функционал.
Не забывайте, что рядом со скриптом должны быть файлы ffmpeg.exe и, само собой, yt-dlp.exe!
В конечном итоге, получилась вот такая картина:
## Шапка скрипта ##
[System.Console]::Title = "Скачать видео с YouTube с помощью yt-dlp"
## Предупреждение перед запуском ##
Write-Host
Write-Host "Перед запуском операции скачивания поместите в буфер обмена URL нужного ролика, канала или плейлиста" -ForegroundColor Cyan
## Запуск цикла скрипта ##
while($true) {
## Формирование меню скрипта ##
Write-Host
Write-Host "------------------------------------------------" -ForegroundColor Yellow
Write-Host " 1. Скачать видео" -ForegroundColor Green
Write-Host " 2. Скачать аудиодорожку в формате mp3" -ForegroundColor Green
Write-Host "------------------------------------------------" -ForegroundColor Yellow
Write-Host
## Селектор ##
$choice = Read-Host "Выберите вариант"
Write-Host
switch($choice){
## Скачивание видео ##
1{
$cmd = "-f bestvideo[height<=1080][ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best --merge-output-format mp4 $(Get-Clipboard) -o video\%(title)s.%(ext)s"
Start-Process -FilePath yt-dlp.exe -ArgumentList $cmd -Wait -NoNewWindow
}
## Скачивание mp3 ##
2{
$cmd = "-x --audio-format mp3 --audio-quality 0 --embed-thumbnail $(Get-Clipboard) -o audio\%(title)s.%(ext)s"
Start-Process -FilePath yt-dlp.exe -ArgumentList $cmd -Wait -NoNewWindow
}
## Неверный выбор ##
default {
Write-Host "Неверный выбор. Попробуйте снова." -ForegroundColor Red
Write-Host
}
}
}
Обращаю Ваше внимание, что видеофайлы будут скачиваться в папку video, а вот аудиодорожки, сконвертированные в mp3 файл, отправятся в папку audio.