Sanatory

Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет! Вторые сутки безрезультатно терзаю гугл запросами. Ребята, объясните слоупоку. Ситуация следующая. Я давно уже пользуюсь скриптом для выкачивания видосов с помощью youtube-dl: Код: Set WshShell = CreateObject("WScript.Shell") link = InputBox("Enter link for downloading", "link for downloading", "https://www.youtube.com/watch?v=") If link <> "" Then Set WshShell = WScript.CreateObject("WScript.Shell") strAttr1 = " -o ""n:/! Internet-TEMP/%(title)s.%(ext)s""" strAttr2 = " --cache-dir ""n:\! Internet-TEMP\!!!!!!!!!!SaveTube""" strAttr3 = " --user-agent ""Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.2704.106 Safari/537.36""" strAttr4 = " --hls-prefer-native" strAttr5 = " --no-mtime" strAttr6 = " --no-check-certificate" strAttr7 = " --ignore-config" strAttr8 = " --geo-bypass" strAttr9 = " --format ""bestvideo[height<1080]+worstaudio""" strAttr10 = " --ffmpeg-location ""PATH\TO\ffmpeg.exe""" youtube_dl = WshShell.ExpandEnvironmentStrings("PATH\TO\youtube-dl.exe") WshShell.Run """" & youtube_dl & """ " & link & strAttr1 & strAttr2 & strAttr3 & strAttr4 & strAttr5 & strAttr6 & strAttr7 & strAttr8 & strAttr9 & strAttr10, 1, True End If | Решил усовершенствовать его, чтобы для выкачивания роликов с youtube и всех остальных сайтов были разные настройки. пробовал и так: Код: Set WshShell = CreateObject("WScript.Shell") link = InputBox("Enter link for downloading", "link for downloading", "https://www.youtube.com/watch?v=") If link <> "" Then Set WshShell = WScript.CreateObject("WScript.Shell") strAttr1 = " -o ""n:/! Internet-TEMP/%(title)s.%(ext)s""" strAttr2 = " --cache-dir ""n:\! Internet-TEMP\!!!!!!!!!!SaveTube""" strAttr3 = " --user-agent ""Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.2704.106 Safari/537.36""" strAttr4 = " --hls-prefer-native" strAttr5 = " --no-mtime" strAttr6 = " --no-check-certificate" strAttr7 = " --ignore-config" strAttr8 = " --geo-bypass" strAttr9 = " --format ""bestvideo[height<1080]+worstaudio""" strAttr10 = " --ffmpeg-location ""PATH\TO\ffmpeg.exe""" function TubeFunction() Set re=New RegExp With re .Pattern = "^.*(? ?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/)|(? ?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*" .IgnoreCase = true End With If re.Test( link ) Then TubeFunction = True Else TubeFunction = false End If Set re = Nothing end function youtube_dl = WshShell.ExpandEnvironmentStrings("PATH\TO\youtube-dl.exe") If TubeFunction Then WshShell.Run """" & youtube_dl & """ " & link & strAttr1 & strAttr2 & strAttr3 & strAttr4 & strAttr5 & strAttr6 & strAttr7 & strAttr8 & strAttr9 & strAttr10, 1, True Else WshShell.Run """" & youtube_dl & """ " & link & strAttr1 & strAttr2 & strAttr3 & strAttr4 & strAttr5 & strAttr6 & strAttr7, 1, True End If End If | и эдак: Код: Set WshShell = CreateObject("WScript.Shell") link = InputBox("Enter link for downloading", "link for downloading", "https://www.youtube.com/watch?v=") If link <> "" Then Set WshShell = WScript.CreateObject("WScript.Shell") strAttr1 = " -o ""n:/! Internet-TEMP/%(title)s.%(ext)s""" strAttr2 = " --cache-dir ""n:\! Internet-TEMP\!!!!!!!!!!SaveTube""" strAttr3 = " --user-agent ""Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.2704.106 Safari/537.36""" strAttr4 = " --hls-prefer-native" strAttr5 = " --no-mtime" strAttr6 = " --no-check-certificate" strAttr7 = " --ignore-config" strAttr8 = " --geo-bypass" strAttr9 = " --format ""bestvideo[height<1080]+worstaudio""" strAttr10 = " --ffmpeg-location ""PATH\TO\ffmpeg.exe""" youtube_dl = WshShell.ExpandEnvironmentStrings("PATH\TO\youtube-dl.exe") WshShell.Run """" & youtube_dl & """ " & link & TubeFunction, 1, True function TubeFunction() Set re=New RegExp With re .Pattern = "^.*(? ?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/)|(? ?:watch)?\?v(?:i)?=|\&v(?:i)?=))([^#\&\?]*).*" .IgnoreCase = true End With If re.Test( link ) Then TubeFunction = strAttr1 & strAttr2 & strAttr3 & strAttr4 & strAttr5 & strAttr6 & strAttr7 & strAttr8 & strAttr9 & strAttr10 Else TubeFunction = strAttr1 & strAttr2 & strAttr3 & strAttr4 & strAttr5 & strAttr6 & strAttr7 End If Set re = Nothing end function End If | Но чёт "не выходит каменный цветок": всякий раз получаю ошибку вида "Не удается найти указанный файл" с указанием источника проблемы, где идёт исполнение Код: WshShell.Run """" & youtube_dl & """ " & link & ... | Суть просьбы проста: мне надо, чтобы в зависимости от того, опознаётся ли вводимая ссылка как youtubeОвская, youtube-dl запускался с разными параметрами. Буду неимоверно благодарен за помощь. Выручайте, друзья! ЗЫ Спасибо за игнор, с ситуацией разобрались в теме Сценарии для Windows | Всего записей: 89 | Зарегистр. 21-04-2010 | Отправлено: 21:20 29-09-2019 | Исправлено: Sanatory, 21:12 04-10-2019 |
|