ITエンジニア/デザイナ向けにオープンソースを毎日紹介

Niconicoはニコニコ動画のログイン、ランキング、動画ダウンロードを行うRubyライブラリです。

みんな大好きニコニコ動画。単なる閲覧目的はもちろん、ニコニコ関連サービスを作るのも面白いと思います。もしあなたがRubyプログラマーであれば使ってみてもらいたいライブラリがNiconicoです。Mechanizeをラッピングし、ニコニコ動画に特化した機能を提供しています。


インストールは簡単です。gem install niconicoで完了します。別途Mechanizeをインストールしておかないといけません。


ログイン機能があります。ユーザID、パスワードを指定して行います。


機能としては二つあり、まずランキング取得ができます。この時にはカテゴリを指定する必要があります。


後は動画IDを指定してVideoオブジェクトを作り、それのget_videoで動画をダウンロードできます。

(利用規約には反していますが)動画のダウンロード目的に使ったり、ランキングを使って面白いサービスを作ったりするのに使えそうです。

Niconicoはソースコードは公開されていますがライセンスは明記されていないソフトウェアになります。


MOONGIFTはこう見る

Mechanizeはスクレイピングライブラリで、HTMLのWebサイトを解析して情報を取得するのによく使われています。Mechanize自体は汎用的なライブラリなので、どんなWebサイトでも使えます。それをニコニコ動画に特化させたのがユニークです。ライブラリ化し、RubyGemにしたことで誰でも手軽に使えるようにしています。

RubyGemに限らずライブラリ化することで作っているWebサービスと機能とを疎結合にし、テストも分けて行えるようになります。ニコニコ動画の変更があった場合もシステム全体を見直すのではなく、このライブラリだけで済みます。Web APIを使う疎結合もありますが、ライブラリ化による疎結合も考えるべきでしょう。

sorah/niconico - GitHub

 

MOONGIFTの関連記事

コメント

  • DevRel
  • Com2