0

submit_formWWW::Mechanizeの関数を次のように使用しています。

eval{
    my $me = $mechanize->submit_form( form_id => 'signin', 
    fields => { 
        login => 'abc', 
        password => 'def'} );
    $me->is_success or die $me->status_line;
};

これはエラーをスローしますがUnknown submit_form parameter "form_id"、それでもページを取得します。なぜこのエラーがスローされるのですか?

4

1 に答える 1

2

どのバージョンの WWW::Mechanize を使用していますか? ( print "$WWW::Mechanize::VERSION\n";)

古いバージョン (2008 年の 1.50 や 2009 年 1 月の 1.54 など) は、form_id パラメータをサポートしていませんでした。

これは、WWW::Mechanize の 1.55_01 開発者リリースまたは 1.56 安定版リリースで最初に導入されました (さまざまなバージョンの WWW::Mechanize で submit_form() メソッドの最初の行 (パラメーター名を検証する) を参照すると、簡単に確認できます)。 CPANで。

更新するには、インストール内容 (Unix? Windows? 中央インストール?) によって異なりますが、通常は CPAN の「cpan」ラッパーを使用します。StackOverflow で CPAN インストールに関する質問を検索し、自分の状況に一致するものがない場合は自分で質問できます。

于 2010-10-19T10:31:26.193 に答える