【发布时间】:2011-07-15 01:55:56
【问题描述】:
我想使用 WWW::Mechanize 从站点中搜索内容,但首先我必须使用注册的用户名和密码登录,而我无法使用此代码进行此操作。必须更改哪些内容才能成功提交表单。谢谢。
use strict;
use warnings;
use WWW::Mechanize;
my $username = "username";
my $password = "password";
my $cookie_jar;
my $url = "http://www.albumartexchange.com/forums/ucp.php?mode=login";
my $mech = WWW::Mechanize->new( cookie_jar => $cookie_jar );
$mech->credentials($username, $password);
$mech->get($url);
$mech->success() or die "Failed";
$mech->submit_form(
form_number => 4,
);
die "Submit failed" unless $mech->success;
$mech->save_content('log.txt');
更新:
use strict;
use warnings;
use WWW::Mechanize;
my $cookie_jar;
my $mech = WWW::Mechanize->new( cookie_jar => $cookie_jar );
$mech->get( 'http://www.albumartexchange.com/forums/ucp.php?mode=login' );
$mech->submit_form(
form_number => 4,
fields => {
'username'
=> 'some_username',
'password'
=> 'some_password',
}
);
$mech->save_content('log.txt');
【问题讨论】:
-
顺便问一下你为什么使用$cookie_jar? Cookie 的东西在 Mechanize 中默认启用,所以我确定你不需要在这里使用它。
标签: perl