其他分享
首页 > 其他分享> > Youtube-dl批处理

Youtube-dl批处理

作者:互联网

@echo off
setlocal enabledelayedexpansion
:begin
echo ____
( set /p pm= & set /p pm2= & set /p url=)<bat.inf
title 视频、封面、字幕下载
echo 指令:c.继续上次下载  s.设置  h.帮助
echo 上次下载:%url%
set /p u=地址:
if "%u%"=="c" set u=%url%
if "%u%"=="s" goto setting
if "%u%"=="h"goto help
set /p="%pm%"<nul>bat.inf
echo.>>bat.inf
set /p="%pm2%"<nul>>bat.inf
echo.>>bat.inf
set /p="%u%"<nul>>bat.inf
youtube-dl.exe %pm% %u% --external-downloader aria2c --external-downloader-args "-x 8 -k 1M"
pause
goto begin

:setting
set pm=
( set /p pm= & set /p pm2=)<bat.inf
echo _______
echo 当前参数:%pm%
echo 1.默认参数  2.代理  3.格式/清晰度  4.下载线程  5.字幕  9.清空参数  0.返回
choice /c 1234590 >nul
if %errorlevel%==1 (
	if not "!pm!"=="" (echo 已有参数! & goto setting)
	set /p="--proxy 127.0.0.1:1021 -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" --merge-output-format mp4 --no-post-overwrites --write-auto-sub --convert-subs srt --write-thumbnail"<nul>>bat.inf
)
if %errorlevel%==2 (
	netsh winhttp import proxy source=ie|findstr /i "代理服务器:" && (
		set /p port=手动输入端口号(添加一次即可):
		set /p="--proxy 127.0.0.1:!port!"<nul>>bat.inf
		)
)
if %errorlevel%==3 echo 参见官网说明文档,readme.md
if %errorlevel%==4 echo "-x 线程数 -k 文件分块大小"
if %errorlevel%==5 echo --write-sub --sub-lang zh-Hans,zh-Hant,en
if %errorlevel%==6 set /p=<nul >bat.inf
if %errorlevel%==7 ( cls & goto begin)
goto setting

:help
echo Nolca诺卡自用。
goto begin

标签:dl,set,goto,批处理,errorlevel%,Youtube,bat,echo,inf
来源: https://www.cnblogs.com/-AClon-/p/13055656.html