Flickrから素敵な壁紙を自動で収集(LWP版)
Flickrから素敵な壁紙を自動で収集 - はこべにっき ♨が面白いのだけど。system
でcurlを呼んでるのが気に入らなかったので、適当に3分ハッキングでやっつけパッチ。パッチというのもおこがましいけど。
10a11 > use LWP::UserAgent; 31a33,34 > my $ua = LWP::UserAgent->new; > $ua->agent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)'); 35d37 < 37,39c39,45 < # Fetch using wget < system("curl -o $output_path $url"); < if ($@) { --- > my $res = $ua->get($url); > if ($res->is_success) { > open my $fh, '>:raw', $output_path or die "can't open: $!"; > print $fh $res->content; > close $fh or die "can't close: $!"; > } > else {
見てのとおりLWP::UserAgentを使って取ってくるように書き直しただけ。これでいちおうcurlには依存しない。ほかの処理はコード読んでないからわからないけど、たぶんこれでいいと思う。UserAgentはいらないかもしれないけど適当に書き換えてみた。まあ、個人的な話をすると、私のPCにはcurl入ってるから別に元のコードのままcurlにまかせればいいんだけど、なんとなく。
ていうか、こんなの使おうとか思う人はこれくらい何も見ずに簡単に書けるだろうし、curlもとっくにインストール済みだろうし。誰のためのパッチだかわかんないなぁ。
あとそれPla(ry