YouTubeやニコニコ動画などのムービーを最高画質・高音質でダウンロード可能な「yt-dlp」の使い方まとめ、年齢制限ムービーも一発ダウンロード可能

GIGAZINE



YouTube・ニコニコ動画・Twitchなど数多くのストリーミングサービスからムービーをダウンロード可能な「youtube-dl」に新機能を追加しまくってさらに便利にしたプログラムが「yt-dlp」です。yt-dlpでは日々更新されるYouTubeの最新仕様に追従したり、ムービーにサムネイル画像を埋め込んだ状態でダウンロードしたり、YouTubeで年齢制限がかかっているムービーもダウンロードできたりとダウンロードアプリに求められる数々の機能が搭載されているので、実際にインストールしてムービーをダウンロードする手順を確かめてみました。

GitHub – yt-dlp/yt-dlp: A youtube-dl fork with additional features and fixes
https://github.com/yt-dlp/yt-dlp

・目次
◆01:yt-dlpのインストール手順
◆02:各サービスのムービーをダウンロードする方法
・YouTubeのダウンロード
・ニコニコ動画のダウンロード
・Twitchのダウンロード
・Vimeoのダウンロード
・Twitterのダウンロード
・Instagramのダウンロード
◆03:yt-dlpを最新版にアップデートする方法
◆04:ログインが必要なYouTubeムービーをダウンロードする方法
◆05:YouTubeチャンネルの全動画を一括ダウンロードする方法
◆06:再生リストの全動画を一括ダウンロードする方法
◆07:自分でリストを作って一括ダウンロードする方法
◆08:字幕ファイルも一緒にダウンロードする方法
◆09:サムネイルの埋め込み&サムネイルだけをダウンロードする方法
◆10:ダウンロードを高速化する方法
◆11:ファイル名&保存先の変更
◆12:便利な小技たち
◆13:オプションを先に設定しておいて「yt-dlp」と入力するだけでダウンロードする方法
◆14:コマンドプロンプトを開かずに動画を一発ダウンロードする方法

◆01:yt-dlpのインストール手順
yt-dlpは以下のページで配布されています。

Releases · yt-dlp/yt-dlp · GitHub
https://github.com/yt-dlp/yt-dlp/releases/


配布ページにアクセスしたら、少し下にスクロールするとダウンロード可能なファイルが見つかります。今回はWindowsで使いたいので「yt-dlp.exe」をクリックしてダウンロードしました。


次にダウンロードした「yt-dlp.exe」をユーザーフォルダ(Windowsの初期設定時に作成されるユーザー名と同じ名前のフォルダ)に移動させます。環境変数の設定を行えば他のフォルダに配置してもOKですが、今回は手順を簡略化するためにユーザーフォルダを使っています。


yt-dlpは単体でも使えますが、ムービー形式変換アプリ「FFmpeg」も準備すればフォーマットの変換やムービーと音声の結合といった機能が利用可能となります。今回は以下のページで配布されているyt-dlp向けのパッチが当てられたFFmpegをダウンロードします。

Releases · yt-dlp/FFmpeg-Builds · GitHub
https://github.com/yt-dlp/FFmpeg-Builds/releases/


配布ページにアクセスしたら、「ffmpeg-master-latest-win64-gpl.zip」を探してダウンロードして……


ダウンロードしたZIPファイルを「Explzh」などの解凍ソフトで解凍します。


解凍して出来上がったフォルダをダブルクリックして……


その中の「bin」フォルダをダブルクリック。


すると3つの実行ファイルが現れるので「ffmpeg.exe」と「ffprobe.exe」を「yt-dlp.exe」と同じユーザーフォルダに移動させます。


こんな感じに、ユーザーフォルダの中に「ffmpeg.exe」「ffprobe.exe」「yt-dlp.exe」が存在する状態になれば、インストール完了です。


◆02:各サービスのムービーをダウンロードする方法
yt-dlpは「yt-dlp.exe」をダブルクリックして実行するアプリではなく、コマンドプロンプトなどの「黒い画面」を利用して実行するタイプのアプリです。まずはコマンドプロンプトを起動するためにスタートメニューで「cmd」と入力し「コマンドプロンプト」をクリックします。


こんな感じの黒い画面が表示されれば準備完了。以下で解説するコマンドは、全てこの画面で使うことを想定しています。


・YouTubeのダウンロード
コマンドといっても、yt-dlpの基本的なコマンドは非常にシンプル。YouTubeに動画をダウンロードしたい場合は以下のコマンドをコマンドプロンプトに入力して「Enterキー」を押せばダウンロード可能な最高画質でダウンロードできます。「yt-dlp」とURLの間には半角スペースが必要なので注意してください。

yt-dlp [YouTubeのムービーのURL]

例えば、絶叫マシン「ド・ドドンパ」を体験した以下のムービーをダウンロードする場合は……

1.56秒で180km/hに達する富士急ハイランド「ド・ドドンパ」の加速力3.75Gをプレス向け試乗会で体験してきた – YouTube
[embedded content]

「yt-dlp https://www.youtube.com/watch?v=u-ue0Ez8i7s」と「yt-dlp」の後に半角スペースを入力し、動画のURL「https://www.youtube.com/watch?v=u-ue0Ez8i7s」を入力してから「Enterキー」を押せばOK。


するとムービーがダウンロードされます。


ダウンロードしたムービーはユーザーフォルダに保存されます。


・ニコニコ動画のダウンロード
ニコニコ動画のムービーをダウンロードする際は、「yt-dlp」の後に半角スペースを入れ、その後にニコニコ動画の当該ムービーペジのURLを入力すればOK。

yt-dlp [ニコニコ動画のURL]

例えば、2020年に大流行した「たべるんごのうた」をダウンロードする場合は「yt-dlp https://www.nicovideo.jp/watch/sm36210300」と入力して「Enterキー」を押すだけです。

・Twitchのダウンロード
Twitchでも同様に「yt-dlp」に続けてURLを入力して「Enterキー」を押せばダウンロード可能です。

yt-dlp [TwitchのURL]
例:https://www.twitch.tv/videos/558818717

・Vimeoのダウンロード
Vimeoの場合も以下のコマンドでダウンロード可能。

yt-dlp [VimeoのURL]
例:yt-dlp https://vimeo.com/288344114

・Twitterのダウンロード
yt-dlpではTwitterに投稿されたのムービーのダウンロードも可能です。ダウンロード方法は他のストリーミングサービスと同様で、「yt-dlp」の後に半角スペースを入力し、ムービーが含まれるツイートのURLを入力するだけです。

yt-dlp [ムービーが含まれるツイートのURL]
例:yt-dlp https://twitter.com/SpaceX/status/1473233806349926403

・Instagramのダウンロード
Instagramも同様に以下のコマンドで一発ダウンロードできます。

yt-dlp [ムービーが含まれる投稿のURL]
例:yt-dlp https://www.instagram.com/reel/CX7MQOat2q8/

yt-dlpは他にも「17LIVE」「TVer」「FC2動画」など数多くのストリーミングサービスに対応しており、基本的に上記と同様のコマンドでムービーをダウンロード可能です。

◆03:yt-dlpを最新版にアップデートする方法
YouTubeなどのストリーミングサービスでは仕様変更が頻繁に行われており、ダウンロードアプリが使用不能になることもあります。yt-dlpは各サービスの仕様変更への対応や機能追加を含むアップデートを月に数回リリースしており、以下のコマンドを実行すればアップデート可能です。

yt-dlp -U

今回の環境では、最新版のyt-dlpを使用していたので「yt-dlp is up to date(yt-dlpは最新版です)」と表示されました。ムービーのダウンロードが失敗するようになったら、上記のコマンドを実行してアップデートしてみるのがオススメです。


◆04:ログインが必要なYouTubeムービーをダウンロードする方法
YouTubeでは暴力や流血などの過激な表現を含むムービーは、アカウントにログインして年齢認証しなければ再生できないようになっています。例えば、YouTubeにログインしていない状態で「ザ・スーサイド・スクワッド “極”悪党、集結」の予告編を再生しようとすると「年齢確認のためログインしてください」と表示されます。


一般的なダウンロードアプリでは年齢制限ムービーには対応していない場合がありますが、yt-dlpにはブラウザのCookieを読み込むことでログイン状態を装って年齢制限ムービーをダウンロードする機能が搭載されています。ブラウザのCookieを読み込んでダウンロードする場合は「–cookies-from-browser」というオプションを含む以下のようなコマンドを用います。

yt-dlp --cookies-from-browser [ブラウザの名前] [URL]

今回はFirefoxでYouTubeにログインして年齢制限ムービーを再生可能にした状態で……


「yt-dlp –cookies-from-browser firefox https://www.youtube.com/watch?v=Z1EbSXxrZ34」というコマンドを実行したところ、無事にムービーをダウンロードできました。この機能はFirefox以外にも「Google Chrome」「Microsoft Edge」「Safari」「Vivaldi」「Opera」「Brave」「Chromium」といったブラウザに対応しています。


◆05:YouTubeチャンネルの全動画を一括ダウンロードする方法
yt-dlpでは、以下のコマンドでYouTubeの各チャンネルの全ムービーを一括ダウンロードできます。

yt-dlp [YouTubeチャンネルのURL]

例えば、GIGAZINEのYouTubeチャンネルを全動画をダウンロードする場合は、チャンネルのURL「https://www.youtube.com/c/gigazine」を確認して「yt-dlp https://www.youtube.com/c/gigazine」というコマンドを実行すれば……


合計8410本のムービーのダウンロードが始まります。途中でダウンロードをやめたい場合は「Ctrlキー」と「Cキー」を同時押しすればコマンドの実行を中断できます。


◆06:再生リストの全動画を一括ダウンロードする方法
以下のコマンドで、YouTubeの再生リストに含まれるムービーを一括ダウンロードできます。

yt-dlp [再生リストのURL]

例えば、以下のBlenderのチュートリアルの場合、「yt-dlp https://www.youtube.com/playlist?list=PLjEaoINr3zgFX8ZsChQVQsuDSjEqdWMAD」というコマンドで一括ダウンロード可能です。


◆07:自分でリストを作って一括ダウンロードする方法
複数のムービーを一括ダウンロードする場合、上記のようにチャンネルや再生リストの全動画を一括ダウンロードする以外に、自分で作ったリストのムービーを一括ダウンロードする機能も存在します。自分で作成したリストを用いてダウンロードするコマンドは以下。

yt-dlp -a [リストのファイル名]

まずはメモ帳などでURLを一行ずつ並べたファイルを作成しユーザーフォルダに保存します。今回は「list.txt」という名前で保存しました。このリストにはYouTubeやニコニコ動画など異なるストリーミングサービスのURLを含められます。


こんな感じに作成したファイルとyt-dlpを同じフォルダに配置したら準備完了。


後は、「yt-dlp -a list.txt」というコマンドを実行すればリストに記した動画が一括ダウンロードされます。


◆08:字幕ファイルも一緒にダウンロードする方法
yt-dlpではムービーに設定された字幕ファイルもダウンロード可能。日本語字幕をダウンロードする場合は以下のコマンドを実行すればOKです。

yt-dlp --write-subs --sub-langs ja [URL]

例えば、日本語字幕が存在する以下のムービーをダウンロードする場合は「yt-dlp –write-subs –sub-langs ja https://www.youtube.com/watch?v=Mlk888FiI8A」というコマンドを実行します。


すると、ユーザーフォルダにムービーと共に字幕ファイルがダウンロードされます。


後は、字幕表示に対応した再生アプリで字幕ファイルを指定するだけで字幕付きのムービーを楽しめます。


◆09:サムネイルの埋め込み&サムネイルだけをダウンロードする方法
K-Lite Codec Pack」などのコーデックパックをインストールしている場合、ムービーのサムネイルをエクスプローラー上で確認できます。しかしyt-dlpで上述の手順で以下のムービーをダウンロードすると……


YouTubeでの表示と異なるサムネイルが表示されてしまいました。


各ストリーミングサービスと同様のサムネイルをムービーに埋め込むには、以下のコマンドでダウンロードする必要があります。

yt-dlp --embed-thumbnail [URL]

例えば、上記のムービーの場合「yt-dlp –embed-thumbnail https://www.youtube.com/watch?v=DJ6APur94FI」というコマンドを実行すればYouTubeと同じサムネイルを表示させることが可能です。


またサムネイルのみをダウンロードする機能やサムネイルのファイル形式を変換する機能も存在します。

サムネイルのみダウンロード
yt-dlp --write-thumbnail --skip-download [URL]
----
サムネイルのみをダウンロードしてJPG形式かPNG形式に変換
yt-dlp --write-thumbnail --skip-download --convert-thumbnails [jpgもしくはpng] [URL]

◆10:ダウンロードを高速化する方法
TwitchのようなHLSを利用したストリーミングサービスでは、並列ダウンロード機能を用いることでダウンロードの高速化が可能です。並列ダウンロードを実行するコマンドは以下。

yt-dlp -N [スレッド数] [URL]

例えば、「yt-dlp -N 2 https://www.twitch.tv/videos/558818717」のように入力すれば対象ムービーを2スレッドで並列ダウンロードできます。実際にスレッド数を変えながら同じムービーをダウンロードしてストップウォッチでダウンロード時間を測定した結果、「スレッド数1:2分29秒」「スレッド数2:2分13秒」「スレッド数3:2分6秒」「スレッド数4:2分5秒」とスレッド数を増やすほどダウンロード時間を短縮できました。

◆11:ファイル名&保存先の変更
yt-dlpの標準設定では、ダウンロードしたムービーのファイル名にムービーのタイトルとムービーのIDが使われます。


ムービーのファイル名はテンプレートに沿って設定可能。ファイル名の設定は以下のように「-o」オプションで行います。

yt-dlp -o [テンプレート] [URL]
—-
ファイル名を「タイトル.拡張子」にする場合
yt-dlp -o %(title)s.%(ext)s [URL]

例えば、テンプレートの入力部分に「%(title)s.%(ext)s」と入力するとムービーのタイトルがそのままファイル名となります。実際に「yt-dlp -o “%(title)s.%(ext)s” https://www.youtube.com/watch?v=fJo7BFf8CEI」というコマンドでムービーをダウンロードすると、ファイル名が「キモイ顔の貯金箱「FACE BANK」動作ムービー.webm」となりました。


さらに、「-o」オプションではファイルの保存先を指定することも可能。「yt-dlp -o “C:\%HOMEPATH%\Downloads\%(title)s.%(ext)s” https://www.youtube.com/watch?v=fJo7BFf8CEI」というコマンドを実行した結果、ダウンロードフォルダにムービーをダウンロードできました。


◆12:便利な小技たち
・ダウンロードの進行状況を表示
「–console-title」オプションを付けてムービーをダウンロードすると、コマンドプロンプトのウィンドウ枠やタスクバーにダウンロードの進行度を表示できます。ダウンロードに時間がかかる長いムービーをダウンロードする際にオススメの機能です。


・ファイルの更新日時をダウンロードした日時に合わせる
yt-dlpでダウンロードしたムービーの更新日時は、標準状態ではムービーの元ファイルの更新日時に合わせられますが……


「–no-mtime」オプションを付けてダウンロードすることで、ファイルの更新日時をダウンロードした日時に合わせられます。ファイルを更新日時順に管理したい時に役立つ機能です。


◆13:オプションを先に設定しておいて「yt-dlp」と入力するだけでダウンロードする方法
上述の通り、yt-dlpにはファイル名の変更やサムネイルの取得など数多くの機能が搭載されていますが、標準状態では各機能を使う際には長いコマンドを入力する必要があります。そこで、「yt-dlp.conf」という設定ファイルを作成してオプションを指定しておくことで「yt-dlp」と入力するだけで各種機能を使えるようにしてみます。

まずは、「ファイル名をタイトルに合わせて、ダウンロードフォルダに保存」という設定を適用してみます。最初にメモ帳などで「-o “C:\%HOMEPATH%\Downloads\%(title)s.%(ext)s”」と記したファイルを作成し、ユーザーフォルダに「yt-dlp.conf」という名前で保存します。


こんな感じに、ユーザーフォルダに「yt-dlp.exe」と「yt-dlp.conf」が存在する状態になればOK。


この状態でオプションを入力せずにyt-dlpでムービーをダウンロードしてみると、設定したとおりにダウンロードフォルダにムービーが保存されました。


「yt-dlp.conf」には以下のように一行ずつオプションを入力すれば、複数のオプションを有効化できます。

-o "C:\%HOMEPATH%\Downloads\%(title)s.%(ext)s"
-N 3
--embed-thumbnail
--no-mtime
--console-title

上記を「yt-dlp.conf」に記入したことで「yt-dlp https://www.youtube.com/watch?v=fJo7BFf8CEI」というコマンドを実行するだけで「ファイル名をタイトルに合わせて、ダウンロードフォルダに保存」「3スレッドで並列ダウンロード」「サムネイルを埋め込む」「更新日時をダウンロード日時に合わせる」「ダウンロード進行状況を表示」という設定を適用した状態でムービーをダウンロードできました。


◆14:コマンドプロンプトを開かずに動画を一発ダウンロードする方法
「yt-dlp.conf」に設定を書き込むことで、かなりシンプルなコマンドでムービーをダウンロードできるようになりました。さらにシンプルに「yt-dlp」という6文字だけでムービーをダウンロードできるように設定してみます。

まずは「yt-dlp.conf」の内容を以下のように編集して……

-o "C:\%HOMEPATH%\Downloads\%(title)s.%(ext)s"
-N 3
--embed-thumbnail
--no-mtime
--console-title
-a dlurl.txt

「dlurl.txt」という名前のファイルを作成し、「yt-dlp.exe」「yt-dlp.conf」「dlurl.txt」をユーザーフォルダに配置します。


これで「dlurl.txt」にダウンロードしたいムービーのURLを列挙し、コマンドプロンプトに「yt-dlp」と入力するだけでムービーをダウンロードできるようになりました。


しかし、これでも「コマンドプロンプトを起動」「ダウンロードが完了したらコマンドプロンプトを終了」という動作が必要。そこでコマンドプロンプトの起動&終了操作も省略してみます。まずはメモ帳などで「yt-dlp」と記したファイルを作成し、「yt-dlp.bat」という名前でユーザーフォルダに保存します。


こんな感じに「yt-dlp.exe」「yt-dlp.conf」「dlurl.txt」「yt-dlp.bat」という4つのファイルがユーザーフォルダに存在する状態にすれば準備完了。


後は「Windowsキー」と「Rキー」を同時押しして「ファイル名を指定して実行」ダイアログを開き、「yt-dlp」と入力して「Enterキー」を押します。


これでコマンドプロンプトが起動し、「dlurl.txt」に列挙したムービーのダウンロードが始まり、ダウンロード完了後に自動的にコマンドプロンプトが終了します。今後は「dlurl.txt」にダウンロードしたいムービーにURLを追加して「ファイル名を指定して実行」ダイアログで「yt-dlp」を実行するだけでムービーのダウンロードが可能です。


この記事のタイトルとURLをコピーする

Source

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