ニコニコ動画のランキングが少し変わりました。
集計期間・更新タイミングの変更
従来は、デイリーや週間など問わず、1時間毎にデータを更新していましたが、下記の通り変更をしました。・デイリー:毎日朝5時 〜 翌日朝5時の24時間で集計。
・週間 :毎週月曜日朝5時 〜 翌週月曜日朝5時の1週間で集計。
・月間 :毎月1日朝5時 〜 翌月1日朝5時の1ヶ月で集計。
※集計の後、朝6時にランキングページが更新されます。
この機会に、データ取得をhtmlからatomに切り替えました。
例:http://www.nicovideo.jp/ranking/mylist/daily/allをhttp://www.nicovideo.jp/ranking/mylist/daily/all?rss=atomに
で、今更ながら気が付いたこと。
atomでは、いつの時点のデータかが分からないのですね…。
日時モノとしてはfeed要素のupdatedがあるのですが、これはatomを「作った」日時っぽい。
状況証拠
- 仕組みが変わった昨日は「2008-08-01T14:46:49+09:00」だった
- 今日は「2008-08-02T05:25:41+09:00」
- 月間、週間ランキングもなぜか毎日updatedが更新されている
atomでランキングの更新時点(2008-08-02T05:00:00+09:00とか)が分かるとありがたいのだけどなあ…。
自分ならどうするか考えてみました。
- feed要素にdcterms:issuedを追加する
- キレイではあるけど、これだけのためにdctermsを宣言するってのはどうなのかね。
- CDATAの中に<strong class="nico-ranking-updated">を入れ込む
- entry要素のcontentに入れ込む
- W3C-DTFで?えー。
- feed要素のsubtitleをCDATA化して入れ込む
- subtitleにCDATAってなくない?
- entry要素のcontentに入れ込む
- entry要素のidに書く
- 動画ページを指示するidがころころ変わるのはどうよ。
うーん。よいアイディアが見つからない。自分なら宣言しまくりに違和感ないので、dcterms:issuedなのだけど…。
あ。発想を変えて、もうupdatedの日時を「出力した」日時(2008-08-02T05:25:41+09:00)ではなく「ランキングを更新した」日時(2008-08-02T05:00:00+09:00)にするという手も。
あとね、feed要素に
<link rel="previous" href="http://www.nicovideo.jp/ranking/mylist/daily/all?rss=atom" /> <link rel="next" href="http://www.nicovideo.jp/ranking/mylist/daily/all?page=3&rss=atom" />
もあればよいと思いました。