認証サイトのcrawler

無事にCrypt::SSLeayがインストールできたので、当初の目的のスクリプトを作成。

use strict;
use LWP::UserAgent;
use HTTP::Cookies;

my $ua = LWP::UserAgent->new;
my $url = 'https://www.example.com/login';
my $req = HTTP::Request->new('POST' => $url);
$req->content('user=hoge&pass=fuga');
$req->header('Content-Type' => 'application/x-www-form-urlencoded');
my $res = $ua->request($req);

my $cookie = HTTP::Cookies->new;
$cookie->extract_cookies($res);
$url = 'https://www.example.com/info';
$req = HTTP::Request->new('GET' => $url);
$cookie->add_cookie_header($req);
$res = $ua->request($req);

ログインページにユーザー情報をPOSTして、返ってきたCookieをセットして情報を取得したいページをGETします。
ネットバンクとかから残高を取得するスクリプトなんかに利用できるかと。