日向夏特殊応援部隊

俺様向けメモ

ニコニコ動画のサムネイル画像を取得する Perl スクリプト

まぁ、散々皆さんやってらっしゃるんじゃないかと思いますが、

#!/usr/bin/perl

use strict;
use warnings;

use Perl6::Say;
use URI::Template;

my $video_uri = shift @ARGV;

exit unless ($video_uri);

my $video_uri_tmpl = URI::Template->new('http://www.nicovideo.jp/watch/sm{video_id}');
my $thumb_uri_tmpl = URI::Template->new('http://tn-skr{server_id}.smilevideo.jp/smile?i={video_id}');

my %result = $video_uri_tmpl->deparse($video_uri);

exit unless ($result{video_id});

$result{server_id} = $result{video_id} % 2 + 1;
my $thumb_uri = $thumb_uri_tmpl->process(%result);

say $thumb_uri;
__END__

video_id に当たる部分が偶数の場合は tn-skr1.smilevideo.jp で奇数の場合は tn-skr2.smilevideo.jp みたい。

この辺りは getthumbinfo と言う非公式 API の結果をつらつら眺めていて、多分そうだろうなと。*1

一応ニコニコ動画の公式APIってのは、

現時点でも様々な方法でニコニコ動画内の情報(動画情報やサムネイルなど)を取得している方がいると思いますが、これも思ったより負荷がかかるので心情的にはやめてほしいというのが正直なところです。できれば負荷の少なそうな時間帯にやってもらえるとありがたいです、こっそりと。

最終的には他のサービスと同様にニコニコ動画内の情報を提供するAPIというのは用意していく予定で、具体的なスケジュールはまだ未定ですが年内にはいろいろできてるんじゃないかと思います。というわけで温かい目で見守ってください。情報は継続的に開発者ブログなんかで提供していきます。

と言う事っぽぃので、各自の判断で。

ところで

最近たまにニコニコ動画観ます>cojiさん

*1:http://b.hatena.ne.jp/koizuka/20081014#bookmark-10404970 によるとホストの割り振りは予告無く変更される場合あるよとの事