Vimeo のビデオファイル (foobar-1.m4s, foobar-2.m4s, ...) を JavaScript を用いてダウンロードする方法

結論

gist にあるこのコード を保存し、実行します。

このコードを元にした Vimeo Private Video Downloader というプロダクトもありますが、これについてはまた別途どこかで書く予定です。

詳細

1. 対象ページに行って DevTools を開きます

開きましょう。

2. ビデオを再生します

再生しましょう。

3. DevTools の「ネットワーク」タブを開き "master.json" ファイルの フルURL を取得します

取得しましょう。

gyazo.com

gyazo.com

4. 「3.」の URL を引数としてコードを実行します

$ node vimeo-downloader.js "https://..."
Download video segment 0
Download video segment 1
Download video segment 2
Download video segment 3
Download video segment 4
(省略)
video done
Download audio segment 0
Download audio segment 1
Download audio segment 2
Download audio segment 3
Download audio segment 4
(省略)
audio done

5. ファイルの確認をする

ファイルがダウンロードされているかを確かめます。ビデオ部分が .m4v、オーディオ部分が .m4a の拡張子でダウンロードされています。

$ ls *.m4*
1a3b5c7d-1e3f-1a3b-1c3d-1e3f5a7b9c1d.m4v
1a3b5c7d-1e3f-1a3b-1c3d-1e3f5a7b9c1d.m4a

.mp4 ファイルにしたい場合は ffmpeg などを用いて結合します。MPC-BE などのプレイヤーを用いれば、再生時に自動で結合してくれます。

Powered by はてなブログ