うーん、これはまいった。
動画のダウンロードプログラムが動作しなくなってしまいました。
ニコニコ動画の仕様が変更されたのか、昨日の夕方ごろから停止している様子。
言語はperlで書いているのですが、深夜作業で原因を探るもCookie周りが臭うということ以外なにも解決できず。
この週末は鬼のようなハードスケジュールで、私自身この解決に時間がとれないため、
もしどなたか分かる方が居ればと思い記事にしたわけですが、もし分かる方がいらっしゃいましたら、コメントでもメールでもいいのでご教授願います・・・m(_ _)m
とりあえず、自分が使ってるダウンロード用プログラムは↓の通りです。(かなり削ったものですが)
perl - ニコニコ動画ダウンローダー新認証対応版を参考にしています。
動画のダウンロードプログラムが動作しなくなってしまいました。
ニコニコ動画の仕様が変更されたのか、昨日の夕方ごろから停止している様子。
言語はperlで書いているのですが、深夜作業で原因を探るもCookie周りが臭うということ以外なにも解決できず。
この週末は鬼のようなハードスケジュールで、私自身この解決に時間がとれないため、
もしどなたか分かる方が居ればと思い記事にしたわけですが、もし分かる方がいらっしゃいましたら、コメントでもメールでもいいのでご教授願います・・・m(_ _)m
とりあえず、自分が使ってるダウンロード用プログラムは↓の通りです。(かなり削ったものですが)
perl - ニコニコ動画ダウンローダー新認証対応版を参考にしています。
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Request;
use HTTP::Headers;
use CGI;
my $nico_mail_premi = 'ニコニコ動画ログインID';
my $nico_password_premi = 'ニコニコ動画ログインパスワード';
$ARGV[0] =~ /(sm\d+)$/ or die "$0 [video_id|uri]";
my $video_id = $1;
my $watch_url = "http://www.nicovideo.jp/watch/".$video_id;
my $api_url = "http://www.nicovideo.jp/api/getflv?v=".$video_id;
my $ua = LWP::UserAgent->new( keep_alive => 1 );
$ua->cookie_jar({});
$ua->post( "https://secure.nicovideo.jp/secure/login?site=niconico",
[mail => $nico_mail_premi, password => $nico_password_premi,]
);
$ua->get( $watch_url);
my $res = $ua->get( $api_url, Referer => $watch_url );
my $q = CGI->new( $res->content );
my $dl_url = $q->param('url');
$q = HTTP::Request->new( GET => $dl_url );
print $dl_url."\n";
$res = $ua->request( $q, "$video_id.flv" );
print "status code : ".$res->code()."\n";
print "response : ".$res->message()."\n";
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Request;
use HTTP::Headers;
use CGI;
my $nico_mail_premi = 'ニコニコ動画ログインID';
my $nico_password_premi = 'ニコニコ動画ログインパスワード';
$ARGV[0] =~ /(sm\d+)$/ or die "$0 [video_id|uri]";
my $video_id = $1;
my $watch_url = "http://www.nicovideo.jp/watch/".$video_id;
my $api_url = "http://www.nicovideo.jp/api/getflv?v=".$video_id;
my $ua = LWP::UserAgent->new( keep_alive => 1 );
$ua->cookie_jar({});
$ua->post( "https://secure.nicovideo.jp/secure/login?site=niconico",
[mail => $nico_mail_premi, password => $nico_password_premi,]
);
$ua->get( $watch_url);
my $res = $ua->get( $api_url, Referer => $watch_url );
my $q = CGI->new( $res->content );
my $dl_url = $q->param('url');
$q = HTTP::Request->new( GET => $dl_url );
print $dl_url."\n";
$res = $ua->request( $q, "$video_id.flv" );
print "status code : ".$res->code()."\n";
print "response : ".$res->message()."\n";











