yt-dlpの使い方

高機能な動画ダウンロードツールです。
YouTube、ニコニコ動画、ABEMA、TVerなど1000以上のサイトに対応しています。

youtube-dlの派生版です。

スポンサーリンク
スポンサーリンク

ダウンロード

yt-dlp

GitHubからyt-dlp.exeをダウンロードします。

FFmpeg

動画と音声を結合したり、様々な後処理に使います。

GitHubからffmpeg-master-latest-win64-gpl.zipをダウンロードします。

解凍して「bin」フォルダにあるffmpeg.exeとffprobe.exeをyt-dlp.exeと同じフォルダに入れます。

Deno

YouTubeのダウンロードに必要なJavaScriptランタイムです。

GitHubからdeno-x86_64-pc-windows-msvc.zipをダウンロードします。

解凍してdeno.exeをyt-dlp.exeと同じフォルダに入れます。

使い方

コマンドプロンプトで以下のように実行します。

yt-dlp.exeのパス 動画のURL

しかし毎回パスを入力するのは面倒だと思うので、バッチファイルがおすすめです。

以下を拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。

@echo off
cd /d %~dp0

set OPTIONS=

set /p URL=URL:

yt-dlp.exe %OPTIONS% "%URL%"

バッチファイルをダブルクリックするとコマンドプロンプトが起動します。

動画のURLを貼り付けてEnterを押すとダウンロードが始まります。

終わるとコマンドプロンプトが終了します。

出力先はバッチファイルと同じフォルダです。

コマンドプロンプトを終了したくない場合はバッチファイルの一番下にpauseを書いてください。

オプション

set OPTIONS=の後に書いてください。

mp4をダウンロード

できるだけmp4をダウンロードする設定です。

-f "bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b"

YouTubeだと動画コーデックがAV1になりますが、H.264にしたい場合は以下を追記します。

-S vcodec:h264

解像度を指定

-f "bv*[height<=?1080]+ba/b[height<=?1080]"

1080p以下がダウンロードされます。

音声のみをダウンロード

-x

mp3に変換したい場合は以下のようにします。

-x --audio-format mp3

指定できるのはbest(デフォルト)、aac、alac、flac、m4a、mp3、opus、vorbis、wavのどれかです。

プレイリストをダウンロードしない

--no-playlist

再生中の動画のみをダウンロードします。

プレイリストから新しい動画のみをダウンロード

--download-archive archive.txt

プレイリストをダウンロードするとarchive.txtに記録され、2回目以降は新しい動画のみがダウンロードされます。

ライブ配信をダウンロード

--wait-for-video 30-90 --live-from-start

YouTube、Twitch、TVerに対応しています。

配信が始まっていない場合は待機状態になります。既に始まっている場合は最初からダウンロードされます。

--wait-for-videoは配信が始まったかどうかを何秒ごとにチェックするかを指定します。短いとBot判定されることがあるため長めがおすすめです。長めに設定したとしても--live-from-startで最初からダウンロードできるので問題ありません。
範囲を指定するとランダムな秒数でチェックするのでBot判定されにくくなります。正確には開始時間までは最大値固定、開始時間になると始まるまでランダムになります。

ログインが必要な動画のダウンロード

クッキーを利用する方法

YouTubeなど

--cookies-from-browser firefox

ブラウザ名を指定します。指定したブラウザでログインして再生できるか確認したら、ブラウザを終了しておきます。
chromeやedgeも指定できますがクッキーの読み込みに失敗するかもしれません。Firefoxがおすすめです。

メールアドレスとパスワードを使用する方法

ABEMAなど

-u メールアドレス -p パスワード

高速化

-N 3

並列ダウンロード数を指定します。上げ過ぎるとBot判定されるリスクがある上に逆に遅くなります。

サムネイルを埋め込む

--embed-thumbnail

メタデータを埋め込む

動画の説明やチャプターを埋め込みます。

--embed-metadata

字幕を埋め込む

--embed-subs --sub-langs ja

--sub-langsで言語を指定します。この場合は日本語です。

ファイル名の変更

デフォルトは「タイトル [ID].拡張子」ですが、以下のようにすると「タイトル.拡張子」になります。

-o "%%(title)s.%%(ext)s"

それ以外はこちらの記事を参考にしてください。

出力先の変更

-P "フォルダパス"

複数のURLをダウンロード

URLを書いたテキストファイルをドラッグ&ドロップしてダウンロードするバッチファイルです。

--download-archiveのように同じURLを何回も指定する場合にも便利です。

バッチファイルをダブルクリックした場合は通常のダウンロードになるので、1つのバッチファイルで済みます。

yt-dlpで複数のURLをダウンロードするバッチファイル
yt-dlpの導入はこちらの記事を参考にしてください。バッチファイル拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。@echo offcd /d %~dp0set OPTIONS=if not "%~1" ==...

フォーマット一覧からダウンロード

以下のようなフォーマット一覧を表示して、ダウンロードしたいものを選択できるバッチファイルです。

yt-dlpでフォーマット一覧からダウンロードするバッチファイル
yt-dlpの導入はこちらの記事を参考にしてください。バッチファイル拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。@echo offcd /d %~dp0set OPTIONS=set /p URL=URL:...

時間指定してダウンロード

ダウンロードしたい部分を切り抜くことができるバッチファイルです。

複数の時間範囲の指定に対応しています。

yt-dlpで時間指定してダウンロードするバッチファイル
yt-dlpの導入はこちらの記事を参考にしてください。バッチファイル拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。@echo offcd /d %~dp0set OPTIONS=set /p URL=URL:...

高機能ダウンロードバッチ

フォーマット選択、時間指定、複数URL処理ができるバッチファイルです。

yt-dlpの高機能ダウンロードバッチ
フォーマット選択、時間指定、複数URL処理ができるバッチファイルです。yt-dlpの導入はこちらの記事を参考にしてください。バッチファイル拡張子を.batにして保存して、yt-dlp.exeと同じフォルダに入れます。@echo offcd ...

アップデート

以下のように書いたバッチファイルをyt-dlp.exeと同じフォルダに入れます。

@echo off
cd /d %~dp0

yt-dlp.exe -U
deno.exe upgrade

バッチファイルをダブルクリックすればyt-dlpとDenoがアップデートされます。

注意事項

一度に大量の動画をダウンロードするのは避けましょう。
YouTubeなどの動画配信サイトは、短時間に大量のアクセスがあると負荷軽減のために制限をかけます。
一時的にダウンロードができなくなったり、最悪の場合はBANされ、二度とダウンロードできなくなるかもしれません。

クッキーを利用する場合はアカウントがBANされるリスクもあるため、不必要にクッキーは利用しない、メインのアカウントは使わないことをおすすめします。

エラーの対処法

yt-dlpのエラーの対処法
エラーでダウンロードできない場合の対処法です。ffmpeg not found.低解像度の動画がダウンロードされたり、動画と音声が別々に保存されたりします。FFmpegをインストールしてあるか確認してください。インストールしてない場合はGi...

公式ドキュメント

https://github.com/yt-dlp/yt-dlp/blob/master/README.md

コメント

  1. ハナコ より:

    >sf tht様
    ご返信、ありがとうございます。
    この度はお騒がせしてしまい申し訳ありません。
    カレントディレクトリにてファイルの存在を確認しました。
    とても助かりました。本当に感謝です。

    これからもサイトの更新を楽しみにしておりますね。

  2. のり より:

    はじめまして。
    youtube-dlのコマンドについてさまよっていたらこちらにたどり着きました。
    質問なのですが、bestvideoとbestaudioを指定してダウンロードした場合は映像と音声が別ファイルになりますよね?
    そのファイルをffmpegで結合しようとしているのですが、ハードウェアエンコード(nvenc)で処理するための引数はわかりますでしょうか?
    ぜひ教えていただけると嬉しいです。

タイトルとURLをコピーしました