ニコニコ動画をダウンロードしたりするgemを作ってみた
といってもrubyforgeに登録したわけじゃないので野良gemですが、
あれこれ機能をつけたりする前にとりあえず使える形にしてしまおうと。
※追記(2008/01/07):今はRubyforgeに登録してgemコマンドでインストールできるようにしてあります。
- nicovideo-0.0.1.gem
使い方については、一応以下のようなサンプルをつけました。
require 'rubygems' require 'nicovideo' require 'yaml' video_ids = ARGV # set account account = YAML.load_file(ENV['HOME'] + '/.nicovideo/account.yml') mail = account['mail'] password = account['password'] # you must login to Nicovideo nv = Nicovideo.new(mail, password).login # get videos and comments video_ids.each {|video_id| nv.watch(video_id) {|v| puts 'title = ' + v.title puts 'tags = ' + v.tags.join(' ') puts 'getting comments xml' File.open("#{video_id}.xml", "wb") {|f| f.write v.comments(100).to_xml } #puts 'getting flv file' #File.open("#{video_id}.flv", "wb") {|f| f.write v.flv } } sleep 3 }
手順としては、
取得できるものは、動画FLV・コメント・タイトル・タグです。
ちなみに、このサンプルでは複数のIDをコマンドライン引数にとって一気にダウンロードできそうに書いてますが、立て続けにアクセスすると嫌われますので間隔を置いてアクセスすることをお薦めします。
もうちょっとドキュメントとかまともに書けたらリモートでインストールできるよう登録しようかな…。