ニコニコ動画 新着動画を取得するスクリプト
頼まれたので作成。
相変わらずnicovideo gem拡張。こいつは本当に便利な奴。
#!/usr/bin/ruby -Ku require 'rubygems' require 'nicovideo' module Nicovideo class Base def newarrival(pagenum = 1) Newarraival.new(@agent, pagenum ) end end class Newarraival < Page include Enumerable def initialize(agent, pagenum) super(agent) @pagenum = pagenum > 10 ? 10 : pagenum params = ["videos"] self.register_getter params @url = url() end def parse(page) result_xpath = page/'div[@class="cmn_thumb_R"]/p[@class="TXT12"]/a[@class="video"]' @videos = result_xpath.inject([]) do |arr, v| vp = VideoPage.new(@agent, v.attributes['href'].sub(/watch\/(\w+)$/,'\1')) vp.title = v.inner_html arr << vp end end def each self.videos.each {|v| yield v } end def url opt = '?page=' + @pagenum.to_s if @pagenum "#{BASE_URL}/newarrival#{opt}" end end end nv = Nicovideo.new('メールアドレス', 'パスワード') nv.newarrival.each do |vp| printf "%-12s %s \n", vp.video_id, vp.title end
出力。
sm2603849 よすどんお絵かき 東方 マエバリーハーン sm2603932 中二が耳コピしたスーパーマリオを雛見沢の人達に歌わせてみた sm2603931 PRIDE.33 アントニオ・ホジェリオ・ノゲイラvsソクジュ 試合 sm2603907 奴隷6日目なのだ sm2603925 天ぷら sm2603891 【PC版】セガラリーレヴォ LancerEvoIX Alpine-1 【3:16.39】 sm2603921 今日の5の2 OP sm2603905 【破天荒遊戯】 破天荒な最終回 【MAD】 sm2603898 【CLANNAD】Help me ERINNNNNN!!【杏メイン】低画質版 sm2603876 【H.264+AAC】BALDR FORCE -バルドフォース- EXE 3Dムービー nm2603897 【腐向け?】巨乳好きの栄口とみこみこ田島 sm2603882 Gゲージ庭園鉄道 4 nm2603895 ウッーウッーウマアジ(゚∀゚) sm2603865 もやしもん特典映像「菌劇場デラックス2話」 sm2603847 【最高音質】 Aster Vocal曲 【CG集】 sm2603886 [UNLIMITS] クローバー sm2603887 【GABBA】洗剤のTVショッピングremix sm2603879 シャナ お月様までひとっ飛び♪ sm2603880 メガネの値札 sm2601396 サイレン(SIREN)を喋りながらやってみた part104 sm2603877 GABBA テスト sm2603035 向井秀徳・古川日出男 アコエレ朗読セッション sm2603843 第6回S-MBC主催MBACリーグ その6 sm2603808 世界のパンク良曲集 sm2603854 (MAD)フタエのバンパイアOP sm2603861 テスト sm2603819 初音ミクと鏡音リンがセクロスを… sm2603846 【涼宮ハルヒの】SOS団を描いてみた【性転換】 sm2603780 「PS版」グランディア低レベル攻略+少し制限プレイ 52 sm2603752 ウルトラマニアック 第03話 「Change over」
SP1になって、nicovideo gemのタグ検索が動かなくなってる。ランキング取得は正常に動作するようです。