Сценарий работает, но когда он заканчивает загрузку всех видео в плейлисте, он запускается снова и загружает их все во второй раз.Я заметил, что он будет загружать плейлист столько раз, сколько видео в списке (например, если плейлист содержит 2 видео, он будет загружать весь плейлист дважды, если 3 видео 3 раза и т. Д.)
$Playlisturl = "https://www.youtube.com/playlist?list=PL171CEFF08937AFD2"
$VideoUrls = (invoke-WebRequest -uri $Playlisturl).Links | ? {$_.HREF -like "/watch*"} | `
? innerText -notmatch ".[0-9]:[0-9]." | ? {$_.innerText.Length -gt 3} | Select innerText, `
@{Name="URL";Expression={'http://www.youtube.com' + $_.href}} | ? innerText -notlike "*Play all*"
.\youtube-dl.exe -o '%(title)s.%(ext)s' $VideoUrls.URL -x --audio-quality 0 --audio-format mp3 --geo-bypass --ffmpeg-location PATH
Мне просто нужно найти способ остановить сценарий, когда он скачал все видео один раз.Также я не написал код для переменной $ VideoUrls.