週休3日サラリーマンのブログ

空気を読まないサラリーマンをやってます。1980生まれ男です。既婚。2011年生まれ息子、2013年生まれ娘あり。

【Mac】YouTubeをダウンロードするコマンド(yt-dlp)

MacコマンドラインYouTube動画をダウンロードすることに成功したので自分用メモ。

YouTubeで太平洋戦争について調べていたら、落合道夫という研究者がアップロードしている動画を見つけたのだが、これが「619回視聴 11年前」などかなり過疎ってていつ消えてしまうか心配なので、まとめてダウンロードしておきたいという要望が生じた。(ただでさえ、思想が強めの内容はYouTubeに不当にBANされたりすることもある。)

今まではよくわからんサイト(私がよく使っていたのは「Y2Mate」というサイト)で、広告に惑わされながら(広告が別窓でポップアップしたらそれを閉じて、ダウンロードリンクが出てくるまで何度も繰り返すという方法で)ダウンロードしていたが、ダウンロードしたものが数十個となるとさすがにこの方法は使えない。

ググって調べてみると、「無料でYouTube動画をダウンロードする方法10選」みたいなのばっかりで検索結果が汚染されていてロクな情報が出てこない(10選じゃなくて1選にしろよって)。

試しにnoteで調べて見たらすぐに解決した。参考にしたのは下記の記事。(ほぼ丸パクリ。ありがとうございます)

「【macYouTubeの動画でもダウンロードするか|くら」

https://note.com/kura_011409/n/n5b0febf0eca3

インストール

$ brew install yt-dlp --HEAD

一応アップグレード/アップデート

$ brew upgrade yt-dlp

設定ファイルを編集 (viエディタの操作方法知らない人は使い慣れたエディタ使ってね)

$ vi ~/yt-dlp.conf

設定ファイル中身はとりあえず以下とした。

#-N 同時に使いたいCPUコア数 (この行消すと -N 1 になる。)
-N 8
#-P "保存したいフォルダ" (ちなみに特殊な指定をすれば仕分けも可能)
-P "~/Downloads"
#コンソールのタイトルバーに現在の処理内容を表示する。
--console-title
#-S ext (MP4優先で落としてくれる。違うの落とされた時はまた言って)
-S ext
#(サムネ埋め込みたかったらこれ)
--embed-thumbnail

実行してみる

$ yt-dlp "[https://youtu.be/Eh2EbnbZc_Y](https://youtu.be/Eh2EbnbZc_Y?si=kLe1QzqowTBW4e_N)?si=kLe1QzqowTBW4e_N"
[youtube] Extracting URL: [https://youtu.be/Eh2EbnbZc_Y](https://youtu.be/Eh2EbnbZc_Y?si=kLe1QzqowTBW4e_N)?si=kLe1QzqowTBW4e_N
[youtube] Eh2EbnbZc_Y: Downloading webpage
[youtube] Eh2EbnbZc_Y: Downloading tv client config
[youtube] Eh2EbnbZc_Y: Downloading player 5ae7d525
[youtube] Eh2EbnbZc_Y: Downloading tv player API JSON
[youtube] Eh2EbnbZc_Y: Downloading ios player API JSON
[youtube] Eh2EbnbZc_Y: Downloading m3u8 information
WARNING: ffmpeg not found. The downloaded format may not be the best available. Installing ffmpeg is strongly recommended: https://github.com/yt-dlp/yt-dlp#dependencies
[info] Eh2EbnbZc_Y: Downloading 1 format(s): 18
[info] Downloading video thumbnail 44 ...
[info] Video Thumbnail 44 does not exist
[info] Downloading video thumbnail 43 ...
[info] Writing video thumbnail 43 to: /Users/taka/Downloads/アジアの解放 思想戦 3/7 [Eh2EbnbZc_Y].jpg
[download] Destination: /Users/taka/Downloads/アジアの解放 思想戦 3/7 [Eh2EbnbZc_Y].mp4
[download] 100% of   19.34MiB in 00:05:36 at 58.77KiB/s
[EmbedThumbnail] mutagen: Adding thumbnail to "/Users/taka/Downloads/アジアの解放 思想戦 3/7 [Eh2EbnbZc_Y].mp4"

10分の動画が約5分でダウンロードできた。拡張子はmp4でサイズは約20MB(小さいな)。

【ファイル名】アジアの解放 思想戦 3/7 [Eh2EbnbZc_Y].mp4
【サイズ】20.4MB

2回目、別の10分くらいの動画のダウンロードはなぜか5秒くらいで完了。なぜ?結構所要時間にはバラつきがあるのだろうか。

あと、処理中のコンソールログをよく見たら「ffmpegがインストールされていない。インストールすることを強く推奨する」というメッセージが出ていることに気づいたので、ffmpegをインストールした。

$ brew install ffmpeg

以下コマンドでバージョン表示したら、それっぽい表示が出たのでインストール成功とみなす

$ ffmpeg -version

もう一度、別の10分くらいの動画をダウンロードしてみたら、WARNINGは出なくなっていた。処理時間は5秒くらい。

これで一旦、yt-dlpの導入は完了。今後は無料のYouTubeダウンロードサイトで悪戦苦闘する必要がなくなった。うれしい。