概要
※最近はyoutube-dlに速度制限をかけているサイトが多いのでこちらのyoutube-dlフォークが使われることが多いようです。コマンドはyoutube-dlをフォーク名に置き換えるだけでそのまま使えます。
他のサイトは「youtube-dl -u ユーザー名 -p パスワード 対象URL」とかでいけるのに一部のサイトだけログインできない場合、クッキーを使わないとだめなようです。
だいたい下記のようなエラーが出ている時にこまることが多いはず。
[サイト名] Downloading login page [サイト名] Looking up account info WARNING: Unable to look up account info: HTTP Error 404: Not Found
[サイト名] 動画ID: Downloading webpage ERROR: Join this channel to get access to members-only content like this video, and other exclusive perks.
環境
Windows8.1
内容
下記のイシューをたどっていくとクッキーを使うとうまくいくよと書いてあります。
cookies.txtというエクステンションをブラウザに追加します。
cookie情報をテキストで扱えるようにするためにエクステンションのようです。
Google Chorome版
firefox版

このエクステンションをブラウザに追加するとクッキーっぽいアイコンが現れます。
この状態でブラウザでログインしたいサイトのURLへ移動しログインします。
ログインしてからアイコンをクリックするとこんなかんじでポップアップテキストができるので、これをコピーしてテキストファイルに貼り付けます。
(firefoxアドオンの場合はcurrent pageをクリック)
(実際の文字列はもっと長いのですべてコピーしましょう)
一応、エンコードはUTF-8Nで「cookies.txt」と名前をつけて保存しました。(shift-jisでいけるのかは試してません)
このテキストをyoutube-dl.exeと同じ場所に置きます。
この状態でcmdで下記のコマンドをうつとログイン状態でDLが始まります。
(うまくいかない場合は該当のページを開いている状態のcookieを設定してください)
youtube-dl.exe --cookies cookies.txt 対象URL
余談ですが、下記のようにうつとファイル名を【yyyyMMdd-タイトル-id.拡張子】で保存してくれるのでちょっと便利です。
youtube-dl.exe --cookies cookies.txt -o %(upload_date)s-%(title)s-%(id)s.%(ext)s 対象URL
おわり。