Radikoのタイムフリーをyoutube-dlでダウンロードする
Radikoのタイムフリーをダウンロードする方法は、すでに2種類紹介
しましたが、私の発見した方法は、playlist.m3u8のダウンロードがで
きなくなったようです。また、ffmpegによる方法は途切れたり、途絶
えたりします。そこで、youtube-dlでダウンロードする方法を発見しま
したので、紹介します。この方法で途切れたり、途絶えたりしない完全
なダウンロードが可能となります。以下のバッチファイルとスクリプト
を作成します。"TOKYO FMなどのタイムフリーをffmpegでダウンロード
する"を参考にして下さい。
バッチファイル名----例えば CMD k radiko-DOWNLOAD2
if exist playlist-playlist.mp4 del playlist-playlist.mp4
CMD /k C:\Windows\SysWOW64\WScript.exe Radiko-download2.js
スクリプト名-----Radiko-download2.js
WScript.Echo(" F12を押してデバック環境を開き、ネットワークウィンドウを表示してから該当の番組を再生して、 playlist.m3u8のURLをコピーした後、Enterキーを押して下さい");
var objIE = new ActiveXObject ('InternetExplorer.Application');
objIE.Navigate ('about:blank');
while (objIE.Busy) WScript.Sleep (10);
var _textarea = objIE.document.createElement ("textarea");
objIE.document.body.appendChild (_textarea);
_textarea.focus ();
_textarea.innerText = "";
objIE.execWB (13, 0);
var strUrl1 = _textarea.innerText;
WScript.Echo("playlist.m3u8のURLを右クリックし 編集して再送信(E) を選択し、デバックウィンドウの右半分にあるX-Radiko-AuthToken:項目の文字列をコピーした後、Enterキーを押して下さい");
_textarea.focus ();
_textarea.innerText = "";
objIE.execWB (13, 0);
var strUrl2 = _textarea.innerText;
objIE.Quit ();
var wsh = new ActiveXObject("WScript.Shell");
var cmdtxt = "youtube-dl.exe --hls-prefer-native --add-header X-Radiko-AuthToken:" + strUrl2 + " \"" + strUrl1 + "\"";
wsh.run(cmdtxt);
尚、X-Radiko-AuthToken:文字列 はffmpegとは異なり、":"の次にスペースを置きません。そこで、"X-Radiko-AuthToken:"はコピーせず、
その文字列だけをコピーします。youtube-dlは最新のものを使用します。
できたplaylist-playlist.mp4をaacに変換したい場合は、下記のバッチファイルを使用します。
ffmpeg.exe -i playlist-playlist.mp4 -acodec copy output.aac