WindowsおよびLinuxパソコン・サーバーで使用可能なyoutube、ニコニコ動画、bilibili動画やその他動画サイトの動画のダウンロードをサポートするオープンソースプロジェクト、youtube-dlプログラムでのyoutube-dlコマンドの使い方・オプションについて解説、紹介します。
以下。(ファイル出力先のパスなどやURLなど変えてコピペして使えます)
LC_ALL=en_US.UTF-8 \
youtube-dl -i -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best' -v \
-o "/mnt/e/_videos/_youtube_dl/tmp/%(id)s--%(title)s--%(uploader)s.%(ext)s" \
--cookies /home/data/youtube-dl/cookie.txt --download-archive /home/data/youtube-dl/archive.txt \
--embed-subs --embed-thumbnail --write-info-json --all-subs --sub-format srt \
"[URL]"
解説。
# In a case of containing such as Japanese you'd add this line ; 日本語テキストなどを含んでいる場合には文字コードを指定します。
LC_ALL=en_US.UTF-8 \
youtube-dl -i -f bestaudio -v \
# destination setting up ; ファイルの取得先を設定します
-o "/mnt/e/_videos/_youtube_dl/%(id)s--%(title)s--%(uploader)s.%(ext)s" \
# Use --cookies option when you'd like to dl for private playlist or videos
--cookies /home/data/youtube-dl/cookie.txt --download-archive /home/data/youtube-dl/archive.txt \
# my favorite opts :-) お気に入りのオプション
# embedding subs if exist ; embedding thums to ; create a json file written infomation of the video ; define subtitle format as
--embed-subs --embed-thumbnail --write-info-json --all-subs --sub-format srt \
# not sure. あまり分からない
# --add-metadata --convert-subs srt
Contents
最高画質・最高音質のmp4で保存
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best'
ちょっと複雑ですが、簡単に訳すと、
mp4形式とm4a形式で保存する
if できなかった(mp4はできたがm4aで出力できなかったなど):
mp4で保存する
if できなかった:
フォーマット形式問わず一番良いやつで保存する(なったことわからないので確証はないですがたぶん動画ファイルになるのでは。)
みたいな感じになります。
出力フォルダを変更
-o
文字コード指定で文字化けを防ぐ
LC_ALL=en_US.UTF-8
これしないとタイトルが文字化け
もちろんexport
をbashrcに書いてもいいと思う。
--cookies cookie.txt
プライベートな非公開動画を落としたい場合、プライベートなプレイリスト等の場合、Cookieを指定してやります。
こちらの拡張機能をインストールし、youtubeにアクセスし、開くと、Cookieが一覧されたテキストデータが表示されるので、これを全選択してやる。
cookies.txt – Chrome Web Store
cat > /home/data/youtube-dl/cookie.txt
などでペースト。
youtube-dlに--cookies /home/data/youtube-dl/cookie.txt
をつけてやるとCookieを自動で付けて非公開URLにアクセスしてきてくれる。
Liked video(高く評価した動画)などによく使用する事が多い。
字幕保存・サムネイル保存・動画情報保存・字幕ファイル保存
--embed-subs --embed-thumbnail --write-info-json --all-subs --sub-format srt
こちらは好みですが、もし動画が消された時、あーもっと情報ほしかったなぁ…となることがあるので、保存できるものはしておくほうが良いと思います。
--embed-subs
は無いほうがいいかもしれなかったですね。各自消してください。
一度ダウンロードした動画をスキップする
--download-archive /home/data/youtube-dl/archive.txt
一度ダウンロードしたURLはアーカイブに保管して、再度ダウンロードするときにアーカイブにURLがあればスキップする、というものです。
つまり重複ダウンロードを防ぎます。
アーカイブをリセットしたいときは> archive.txt
。
よかったら。
ydl(){
LC_ALL=en_US.UTF-8 \
youtube-dl -i -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best' -v \
-o "/mnt/e/_videos/_youtube_dl/tmp/%(id)s--%(title)s--%(uploader)s.%(ext)s" \
--cookies /home/data/youtube-dl/cookie.txt --download-archive /home/data/youtube-dl/archive.txt \
--embed-subs --embed-thumbnail --write-info-json --all-subs --sub-format srt \
"$(cuturlquerystr "$1")"
}
alias ydlarcbak="cp /home/data/youtube-dl/archive.txt /home/data/youtube-dl/archive.txt.$(plaindate).bak"
関連記事:
yt-dlpでyoutube-dlでエラーになる動画もダウンロード
youtube-dlでニコニコ動画をダウンロードする
youtube-dlを使いVLCで動画をストリーミング再生
streamlinkでYoutube動画をVLCでストリーミング再生
関連広告: