2008-03-07
_ Plagger::Plugin::Filter::FetchNicoVideo でニコニコ動画(SP1) 対応(2)
H.264動画対応に加えてニコニコムービーメーカで作成されたものにも対応させておく.
Index: FetchNicoVideo.pm =================================================================== --- FetchNicoVideo.pm (revision 7618) +++ FetchNicoVideo.pm (working copy) @@ -73,8 +73,16 @@ if ( $self->conf->{filename_encode} ) { Encode::from_to( $filename, "utf-8", $self->conf->{filename_encode} ); } - my $path = File::Spec->catfile( $self->conf->{dir}, $filename . ".flv" ); + $enclosure->url =~ m!^http://[^/]+(?:smilevideo|nicovideo)\.jp/smile\?(\w)=(?:[^.]+)\.\d+(?:low)?!; + my %video_type_of = ( + v => 'flv', + m => 'mp4', + s => 'swf', + ); + my $ext = exists( $video_type_of{$1} ) ? $video_type_of{$1} : "unknown"; + + my $path = File::Spec->catfile( $self->conf->{dir}, $filename . ".$ext" ); unless ( -e $path ) { #access video page $ua->get("http://www.nicovideo.jp/watch/$video_id"); @@ -112,6 +120,7 @@ if ($res->header('Content-Length') ) { $enclosure->length( $res->header('Content-Length') ); } + $enclosure->type( Plagger::Util::mime_type_of($path) ); $entry->add_enclosure($enclosure); }