Perl楽しいから好き

Perlをはじめとしたプログラミング周りのあれこれについて。モダーンなPerlを楽しんでいます。

WWW::Mechanizeは、めちゃナイス!!

台風4号が全国に大雨を降らす中、

私perl48は、
インドアなCPANモジュール厨と化しております。


今日は、WWW::Mechanizeモジュールで
Form要素への入力を試してみました。


Mechanize・・・めちゃないず・・・めちゃナイスの複数形
などとアフォウな連想はさておき、

メールアドレス1件をまぐまぐに登録する
というなんとも無益なスクリプトを書いてみました。

#! /bin/perl/ -w
#
#WWW::Mechanize_mag2_test
#WWW::Mechanizeでまぐまぐの登録フォーム自動入力

use strict;
use WWW::Mechanize;
use encoding qw(shiftjis);


my $url = 'http://www.mag2.com/m/0000109251.html';
my $name = 'rdemail';
my $value = 'youraddress@gmail.com';

# WWW::Mechanizeクラスのnewメソッドをもつmechオブジェクトを生成
my $mech = WWW::Mechanize->new();

#$urlへアクセスする
$mech->get( $url );

# ステータスのチェック
print "リクエストは成功しているか?(1/0)\n" . $mech->success() ."\n";
print "リクエストのHTTP statusは?\n" . $mech->status() ."\n";
print "現在のページのURIは?\n" . $mech->uri() ."\n";
print "現在のページのTitleは?\n" . $mech->title() ."\n\n";

$mech->field( $name, $value, 1 );
$mech->click_button( value => '登録' );

# ステータスのチェック
print "リクエストは成功しているか?(1/0)\n" . $mech->success() ."\n";
print "リクエストのHTTP statusは?\n" . $mech->status() ."\n";
print "現在のページのURIは?\n" . $mech->uri() ."\n";
print "現在のページのTitleは?\n" . $mech->title() ."\n\n";

print "mission complete.\n";


想像以上に簡単に自動化できて、

めちゃナイス!!