フォーマット選択、時間指定、複数URL処理ができるバッチファイルです。
yt-dlpの導入はこちらの記事を参考にしてください。
バッチファイル
拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。
@echo off
cd /d %~dp0
set OPTIONS=
if not "%~1" == "" (
set OPTIONS=%OPTIONS% -a
set URL=%~1
goto Download
)
set /p URL=URL:
yt-dlp.exe -F "%URL%"
set /p ID=ID:
if defined ID (
set OPTIONS=%OPTIONS% -f %ID%
)
:Loop
set SECTIONS=
set /p SECTIONS=SECTIONS:
if defined SECTIONS (
set OPTIONS=%OPTIONS% --download-sections "*%SECTIONS%"
) else (
goto Download
)
goto Loop
:Download
yt-dlp.exe %OPTIONS% "%URL%"
使い方
単体URL
バッチファイルをダブルクリックするとコマンドプロンプトが起動します。
URLを貼り付けてEnterを押すとフォーマット一覧が表示されます。
一番左のIDの数字を入力してEnterを押します。
何も入力せずEnterを押すとデフォルトのフォーマットをダウンロードします。
動画と音声を結合する場合は+で繋いでください。
137+140
複数のフォーマットをダウンロードする場合は,で区切ってください。
137,136,134
拡張子が同じだとファイル名が同じになってしまうので、set OPTIONS=の後に以下のように書いてください。ファイル名にIDの数字が入ります。
-o "%%(title)s.f%%(format_id)s.%%(ext)s"
次に「SECTIONS:」と表示されたら時間範囲を入力してEnterを押します。
1:00-2:00 のように入力します。この場合は開始1分から2分までがダウンロードされます。
繰り返し聞かれるので、複数の時間範囲をダウンロードする場合は入力してください。
何も入力せずEnterを押すとダウンロードが始まります。
終わるとコマンドプロンプトが終了します。
出力先はバッチファイルと同じフォルダです。
複数の時間範囲をダウンロードする場合はset OPTIONS=の後に以下のように書いてください。ファイル名に開始時間と終了時間が入ります。
-o "%%(title)s.%%(section_start)s-%%(section_end)s.%%(ext)s"
複数URL
1行に1つのURLを書いたテキストファイルを作成します。
先頭に#を付けるとコメント扱いになります。
テキストファイルをバッチファイルにドラッグ&ドロップするとダウンロードが始まります。



コメント