「Youtube動画のダウンロード」と聞くと、“違法では?”と不安になる人も多いと思います。
もちろん、著作権で保護された動画を許可なくダウンロードするのはNGです。
しかし、自分の動画・ダウンロード許可されている動画・学習用途の許可済みデータであれば問題ありません。
今回は、Python の youtube_dl を使い、安心安全に手元へ保存する方法を解説します。
短いコードで実装できるので、学習にも最適です。
まず結論:このコードを貼れば動画を保存できます
import youtube_dl
links = input('URLを空白区切りで入力してください: ').split()
path = input('保存先ディレクトリを入力してください: ')
outtmpl = '%(title)s.%(ext)s'
ydl_opts = {'outtmpl': path + '/' + outtmpl}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(links)
※ 動画のURLを複数まとめてダウンロードできます。
youtube_dl は Python の外部ライブラリで、
Youtube の動画を簡単にダウンロードできる便利ツールです。
まずは pip でインストールします。
pip install youtube_dl
これだけで準備完了です。
① まずライブラリをインポートします。
import youtube_dl
② 次に、ダウンロードしたい動画のURLをリストで用意します。
links = [
'https://www.youtube.com/watch?v=SC2IKKO2jNk&t=127s',
'https://www.youtube.com/watch?v=pTjPiJyHi8U',
]
③ 保存先フォルダとファイル名形式を設定します。
path = './video'
outtmpl = '%(title)s.%(ext)s'
④ youtube_dl に渡す設定(辞書)を作ります。
ydl_opts = {'outtmpl': f'{path}/{outtmpl}'}
⑤ with 文でダウンロード実行!
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(links)
リンクを1つずつ読み込み、
タイトル名.拡張子 で保存してくれます。
最終コード(綺麗に整形済)
import youtube_dl
links = [
'https://www.youtube.com/watch?v=SC2IKKO2jNk&t=127s',
'https://www.youtube.com/watch?v=pTjPiJyHi8U',
]
path = './video'
outtmpl = '%(title)s.%(ext)s'
ydl_opts = {'outtmpl': f'{path}/{outtmpl}'}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(links)
たった 10 行未満で動画を保存できるのは驚きですよね。
youtube_dl には再生リスト対応・音声のみ抽出・画質選択など
便利なオプションが多数あります。
気になる方は公式リポジトリもどうぞ:
https://github.com/ytdl-org/youtube-dl
今回は、Python の youtube_dl を使って
Youtube 動画を安全にダウンロードする方法を紹介しました。
- pip install だけで導入OK
- 10行の短いコードで動画保存
- 複数URLもまとめて処理可能
Youtube に関わるツールやアプリを作る際にも非常に便利です。
ぜひ今回のコードを使って、小さなツール作りから始めてみてください!