1

LWP(Library for WWW in Perl)を使用してJSP Webサイトにログインし、いくつかのアクションを実行するスクリプトを作成しようとしています。Webサイトには、ログイン後にレンダリングされるAjax要素(ウィジェット)がいくつかあります。このコードでフレームを取得できますが、Ajaxウィジェットを読み込めません。

#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request::Common qw(POST);
use HTTP::Cookies;

my $ua = LWP::UserAgent->new;
$ua->agent('Mozilla/8.0');
$ua->cookie_jar(
        HTTP::Cookies->new(
                file => 'mycookies.txt',
                autosave => 1
                )
        );
push @{ $ua->requests_redirectable } , 'POST';
$ua->max_redirect('3');
my $user="USER";
my $psw="PASSWORD";
my $req = POST 'http://somesite.../?cmd=login', ['userid'
 => $user , 'pwd' => $psw];
my $res = $ua->request($req);
if ($res->is_success){
print $res->content;}else { print $res->status_line . "\n" . $res->content;}
exit 0;

CURLを試しましたが、Ajaxパーツでも失敗しました。誰か助けてもらえますか?これを行うツールはありますか?[仮想ブラウザを作成する必要があると言われましたが、curlとlwp以外の方法はわかりません]

4

1 に答える 1

1

ブラウザなど、AJAX 用の JavaScript エンジンが必要です。WWW::Mechanize::Firefoxを参照してください。

于 2012-07-02T21:02:38.167 に答える