LWP::UserAgentでローカルファイル保存

LWP::UserAgent - search.cpan.orgでローカルにファイル保存するためのコード。
更新された場合に限って保存するには$ua->mirror($url, $filename);使う

#!/usr/bin/perl

use strict;
use warnings;
use Encode;
use LWP::UserAgent;
use File::Spec;
our $CachDir = '/path/to/dir';

if (! -e $CachDir ) {
	mkdir $CachDir or die "cannot creat $CachDir : $!";
}

my $url = $ARGV[0];
my $file = $ARGV[1];
my $filename = File::Spec->catfile($CachDir, $file);

my $http_proxy = "http://proxy:port";
my $ua = LWP::UserAgent->new;
$ua->agent('agent');
$ua->proxy('http', $http_proxy);

my $res = $ua->get($url, ':content_file' => $filename);
print $res->status_line;