俺の外付けHDD

外付けHDDではなくはてなのサーバーラックの中でした

汎用性の高い動画ダウンロードスクリプト"youtube-dl"の使い方

たくさんの対応サイトからゴニョゴニョしたりゴニョゴニョする方法をメモ。

注意事項

・全て自己責任でお願いします。
・法律や規約に触れることはしないようにしましょう。
・公式ドキュメント:https://github.com/rg3/youtube-dl/blob/master/README.mdにとっても丁寧に使い方が載ってるので必ず目を通しておきましょう。

必要なもの

Microsoft Visual C++ 2010 Redistributable Package (x86)が入ってなければhttps://www.microsoft.com/en-US/download/details.aspx?id=5555からDLしてインストール
https://github.com/rg3/youtube-dl/releases/から最新版の"youtube-dl.exe"をDL
https://ffmpeg.zeranoe.com/builds/ からffmpeg公式の最新版バイナリを入手(Version:お好きな方をどうぞ,Architecture:OSに合わせる,Linking:お好みで→Download FFmpeg)(これがないとMPEG-DASHを使用しているYouTubeなんかは720pまでしかDL出来ない。ffmpegを置いておくとそれを使ってmixしてくれる。)

基本的な使い方

youtube_dl(このフォルダは管理者権限の必要ないディレクトリに配置すること)
┣(デフォルトではここに動画ファイルが保存される)
┣ffmpeg.exe
┗youtube-dl.exe

テキストエディタ等で以下の内容を記述,拡張子.batで"youtube-dl.exe"と同じディレクトリに保存。
バッチファイルを"youtube-dl.bat"という名前にする場合,また"youtube-dl.exe"とは別のディレクトリに配置する場合はyoutube-dlではなく完全なパス("C:\hoge\youtube-dl.exe"みたいな)を入力しないと"youtube-dl.exe"ではなく自分"youtube-dl.bat"を呼び出してしまうので注意。

youtube-dl "動画サイトのURL"
pause

youtube-dl.batをダブルクリックで実行。上手くいかない場合はエラー内容が表示される。
③ログインしろみたいに言われた場合

youtube-dl" -u "ID(メールアドレスとか)" -p "パスワード" "動画サイトのURL"

使いやすくしたバッチ

参考までに。

::youtube-dl.exeがあるフォルダのパス
set YDFOLDERPATH=C:\DTV\youtube_dl
::ffmpeg.exeがあるフォルダのパス
set FFFOLDERPATH=C:\DTV\ffmpeg
::vlc.exeがあるフォルダのパス
set VLCFOLDERPATH=C:\Program Files\VideoLAN\VLC
::出力フォルダのパス
set OUTFOLDERPATH=C:\Users\Shibanyan\Desktop

set /p URL=URLを入力:
set /p ASKLOGIN=ログインが必要なサイトの場合指定[h=ほげほげ動画,Enter=ログイン不要]:
if "%ASKLOGIN%" == "h" set LOGINOPTION=-u userid(mail) -p password
if "%ASKLOGIN%" == "" set LOGINOPTION=
set /p ASKFORMAT=フォーマットを指定[a=bestaudio,Enter=デフォルト(bestvideo+bestaudio/best)]:
if "%ASKFORMAT%" == "a" set FORMATOPTION=-f bestaudio
if "%ASKFORMAT%" == "" set FORMATOPTION=
set /p ASKOPTOUT=出力先を指定[f=ffplay,p=ffplaypp,v=vlc,Enter=DL]:
if "%ASKOPTOUT%" == "f" set "OPTOUTOPTION=-o - | "%FFFOLDERPATH%\ffplay.exe" -"
if "%ASKOPTOUT%" == "p" set "OPTOUTOPTION=-o - | "%FFFOLDERPATH%\ffplay.exe" - -vf pp=ac"
if "%ASKOPTOUT%" == "v" set "OPTOUTOPTION=-o - | "%VLCFOLDERPATH%\vlc.exe" -"
if "%ASKOPTOUT%" == "" set OPTOUTOPTION=-o "%OUTFOLDERPATH%\%%(title)s-%%(id)s.%%(ext)s"

"%YDFOLDERPATH%\youtube-dl.exe" --ffmpeg-location "%FFFOLDERPATH%\ffmpeg.exe" %LOGINOPTION% %FORMATOPTION% "%URL%" %OPTOUTOPTION%
pause

・上の4つのsetを自分の環境に合わせる。
環境変数ASKLOGINにてh=ほげほげ動画となっているが,"h"を入力すると-u userid(mail) -p passwordがオプションに付け加えられるようになっている。お好みにに指定して下さい。
環境変数ASKFORMATにてa=bestaudioとなっているが,"a"を入力すると-f bestaudioがオプションに付け加えられ最高品質の音声ファイルがDLできるようになっている。お好みにに指定して下さい。
環境変数ASKOPTOUTにてf:ffplayでストリーミング,p:ffplayでppフィルタで補正処理をしながらストリーミング,v:vlcでストリーミング,Enter:DL(-oの既定値は%(title)s-%(id)s.%(ext)s。バッチ内なので通常の環境変数%1つで囲んだままにし,youtube-dlのオプションは%%%にしてエスケープする。) 。お好みにに指定して下さい。

おわりに

このツールをつくって下さったRicardo García氏に感謝します。

Copyright © 2016-2017 俺の外付けHDD All Rights Reserved.