我正在尝试使用 Perl LWP 通过 Way2sms 发送短信。登录部分成功,之后我将 cookie 保存到本地文件。登录后的欢迎页面显示一个发送短信链接,单击哪个链接将重定向到另一个页面,其中包含手机号码和短信文本的两个输入以及一个用于提交和发送短信的按钮。Firebug 显示了如图所示的页面结构。根据 Iframe url 和表单的action
属性,我构造了表单操作的绝对 URL,并相应地提交表单,并将 cookie 存储在文件中。但是,没有发送短信。我在这里做错了什么?代码如下。(name
两个文本输入的属性是正确的,通过观察 Firebug 中的源代码得到,虽然那'
use LWP::UserAgent;
open f, "> way2sms.txt";
use HTTP::Cookies;
my $cookie_jar = HTTP::Cookies->new(
file => "cookies.txt",
autosave => 1,
);
my $ua = LWP::UserAgent->new(
agent =>
'Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1',
cookie_jar => $cookie_jar,
);
my $response = $ua->post(
'http://site2.way2sms.com/contentt/bar/Login1.action',
{
username => $user,
password => $pass,
}
);
if ( $response->is_redirect ) {
$response = $ua->get( $response->header('Location') );
print 5 if $response->decoded_content =~ /Kaustav Mukherjee/i; #prints it, showing that the login is successful
}
my $smsresp = $ua->post("http://site5.way2sms.com/jsp/quicksms.action",[MobNo=>$mob,textArea=>'Hello World']);