NHK語学講座のらじる★らじる聴き逃しサービスを取得するRubyスクリプトradirudegogaku.rb(2020/4/2暫定版)

ごあいさつ

こんにちは。gogakuondemand.rb 作者の @riocampos です。ご無沙汰しております、というか gogakuondemand.rb をほとんど放置していて申し訳ありませんでした。

NHKゴガクでの語学番組ストリーミング配信がとうとう終了

NHKゴガクにて長らく独自配信を続けてきた語学番組のストリーミング配信がとうとう終わり、らじる★らじるの聴き逃しサービスに統合されました。なので gogakuondemand.rb は使えなくなりました 使えなくなったと思いましたが設定ファイル pref.rb の「school_year」を「2020」に変更したらダウンロード出来てることに4/6気付いた…*1(ただし現時点では「基礎英語0」だけはNHKゴガクに残ってますけど…どうなるんでしょうね 4/6時点では、2020年度もNHKゴガクでやるっぽい)。

らじる★らじる聴き逃しサービスからの取得

ということで対応スクリプトを作りました。しかしまだ不完全版でして、UI というか gogakuondemand.rb のような

"ラジオ英会話"             => true,

のような設定ファイルがまだ作れてません。気長に開発してると年度始め第1週(というか昨年度最終週)のストリーミングが取得出来なくなっちゃうので、暫定版として公開しました。特に「レベルアップ 中国語」と「レベルアップ ハングル講座」は2019年度で終了してしまったのに、最終週だけらじる★らじる聴き逃しサービスでの公開なのよね(何を考えてんだ NHK、と思ってしまう)*2

脱線しました。で、設定ファイル方式のほうが便利だとは思うので、今月中には改善しようと思っています。

(おまじないとしての)お断り

  • このスクリプトの動作は保証されません。Mac にて開発していますので Windows での動作はよく分かりません。が、gogakuondemand.rb が動作していた環境であれば動作するはずです。
  • このスクリプトで取得したストリーミング配信ファイルは私用にのみご利用ください。他の方が取得可能となる公開サイトへのアップロードなど著作権法違反行為は禁止します。
  • スクリプト著作権は放棄しておりません。有償アプリケーション作成の基礎にすることは絶対にやめてください。

必要環境

  • Ruby 言語
  • OpenSSL または GnuTLS 対応の FFmpeg

環境設定などについては以前の NHK語学講座のラジオ番組ストリーミングを取得するRubyスクリプトgogakuondemand.rb(v1804_1 2018/5/5更新版) - 別館 子子子子子子(ねこのここねこ)はてブロ部 などを参考にしてください。

スクリプトのダウンロードファイル

www.dropbox.com

zip ファイルの中には radirudegogaku0.rb 一つだけ入っています。なにせ暫定版なので…。なので名前も radirudegogaku0.rb ですw

使い方

各語学番組にはそれぞれ ID が割り振られています。その ID は各番組サイトの URL で分かります。例えば

であればサイトの URL の末尾 0916_01 が ID です。radirudegogaku.rb では、この ID によりダウンロード番組を指定します。「ラジオ英会話」をダウンロードする場合は

$ ruby radirudegogaku0.rb 0916_01

とします。今日の時点でこのスクリプトを実行すると

$ ruby radirudegogaku0.rb 0916_01
1 
 1【ラジオ英会話(0916_01)】のダウンロードを開始します。
ラジオ英会話~ハートでつかめ!英語の極意~「Lesson236」_2020_03_23.m4a
[##################################################] 903 / 903 秒完了
ラジオ英会話~ハートでつかめ!英語の極意~「Lesson237」_2020_03_24.m4a
[##################################################] 903 / 903 秒完了
ラジオ英会話~ハートでつかめ!英語の極意~「Lesson238」_2020_03_25.m4a
[##################################################] 903 / 903 秒完了
ラジオ英会話~ハートでつかめ!英語の極意~「Lesson239」_2020_03_26.m4a
[##################################################] 903 / 903 秒完了
ラジオ英会話~ハートでつかめ!英語の極意~「Lesson240」_2020_03_27.m4a
[##################################################] 903 / 903 秒完了

作業終了

となります。命令の次の行の「1」というのは「1つ目の番組の取得先指定ファイル(録音ファイルではない)を取得出来ました」という意味合いです。

複数の番組を指定する場合には、半角スペースで区切ってください。つまり「ラジオ英会話(ID: 0916_01)」と「遠山顕の英会話楽習(ID: 4794_01)」をダウンロードしたい場合には下のようにします。上で「ラジオ英会話」を取得済みなのでこのようになります。

$ ruby radirudegogaku0.rb 0916_01 4794_01
1 2 
 1【ラジオ英会話(0916_01)】のダウンロードを開始します。
更新はありません。
 2【遠山顕の英会話楽習(4794_01)】のダウンロードを開始します。
遠山顕の英会話楽習「3月Dialog7」_2020_03_23.m4a
[##################################################] 900 / 900 秒完了
遠山顕の英会話楽習「3月Dialog8」_2020_03_24.m4a
[##################################################] 900 / 900 秒完了
遠山顕の英会話楽習「3月Review7・8」_2020_03_25.m4a
[##################################################] 903 / 903 秒完了

作業終了

書き忘れていましたが、ダウンロードしたストリーミングファイルはスクリプトと同じフォルダに、それぞれの番組別に保存されます。

f:id:riocampos:20200402184848p:plain:w500

各語学番組のID

番組名 ID
基礎英語1 0677_01
基礎英語2 0694_01
基礎英語3 0959_01
ラジオ英会話 0916_01
ボキャブライダー 4121_01
エンジョイ・シンプル・イングリッシュ 3064_01
英会話タイムトライアル 2331_01
高校生からはじめる「現代英語」 4407_01
遠山顕の英会話楽習 4794_01
入門ビジネス英語 0914_01
実践ビジネス英語 0917_01
世界へ発信!ニュースで英語術 4812_01
まいにち中国語 0915_01
おもてなしの中国語 4393_01
レベルアップ 中国語
(2019年度で終了)
2334_01
まいにちハングル講座 0951_01
おもてなしのハングル 4795_01
レベルアップ ハングル講座
(2019年度で終了)
2335_01
まいにちイタリア語 入門編 0946_01
まいにちイタリア語 応用編 4411_01
まいにちドイツ語 入門編 0943_01
まいにちドイツ語 応用編 4410_01
まいにちフランス語 入門編 0953_01
まいにちフランス語 応用編 4412_01
まいにちスペイン語 入門編 0948_01
まいにちスペイン語 中級編
(2019年度下半期は応用編でした)
4413_01
まいにちロシア語 入門編 0956_01
まいにちロシア語 応用編 4414_01
アラビア語講座 0937_01
ポルトガル語入門 1893_01

基礎英語0は…どうなるんでしょうね。とりあえずNHKゴガクでの公開が続くのであれば gogakuondemand.rb でダウンロードできます。残念ながら現在の gogakuondemand.rb そのままではダウンロード出来ませんでした。更新予定です。

ファイルフォーマット

m4a(aac)のみです。mp3 希望の方は各々で直してください。 4/6追記:この後に動作しない mp3 変更方法を書いてしまっていました。申し訳ありません。オプション指定にて mp3 も選択出来るよう更新します。

スクリプトソース

このスクリプトに関して、ライセンスとかはよく知らないですが、ひとまず、利用や紹介をする場合には、この4/2分へのリンク

NHK語学講座のらじる★らじる聴き逃しサービスを取得するRubyスクリプトradirudegogaku.rb(2020/4/2暫定版) - 別館 子子子子子子(ねこのここねこ)はてブロ部

を貼ってください。

投げ銭

www.amazon.co.jp

このスクリプトが役立ったときには、Amazonギフト券をお送り頂ければありがたいです。 メールアドレスは「riocampos22あっとまーくgmail.com」です。 よろしくお願いします。(お送り頂いた方、本当にありがとうございます。)

質問や希望を出される方へ

私も使ってるスクリプトなので、今後NHK側が行った変更には対応していくするつもりです。機能要望はOKですが、実現可能かどうかは私の開発能力に掛かっていますw基本的にはノーサポートであると理解してください。

そして、自分で環境構築が出来る方にしかサポートできません。「私でも出来るでしょうか?」「Rubyってなに?」「コマンドってなに?」という方は利用を諦めてください。

なお、質問などはここのコメント欄よりも @riocampos に送ってもらうほうが即応できると思います。DM もオープンにしてあります。

Have Fun! And Let's Learning!

私のように録音ファイルを取得するだけで満足せず、ちゃんと語学学習しましょうね☆

*1:自分で作った仕様なのに忘れてるorz

*2:公開はしてなかったけど gogakuondemand.rb でのダウンロードは(設定ファイル更新で)可能だったんだと思います