perl WWW :: Mechanize submit_form()直接写入文件?

时间:2013-05-31 18:38:39

标签: forms perl www-mechanize

我有一个perl脚本,可以浏览网站上的两个表单页面,以便将最终表单提交的结果下载到文件中。这个页面非常大,我宁愿把它直接写到磁盘上,而不是把整个东西放在内存中。

以下是代码段:

$mech->submit_form(
    form_name => 'search',
    fields      => {
        "srch_recd"    => $cfg{max_rows}, #results per page
    }
);

$mech->save_content( $workdir.$cfg{cachedstones} );

我知道我可以这样做:

$mech->get( $url, ":content_file"=>$tempfile );

为了在使用get()时将结果转到文件中。但是,对submit_form()执行相同的操作并不起作用。

如何让submit_form()的结果直接进入fiel,而不是坐在内存中?

1 个答案:

答案 0 :(得分:0)

来自WWW::Mechanize::FAQ

  

您还可以使用:content_file标志将任何内容直接保存到磁盘get(),它是LWP :: UserAgent的一部分。

$mech->get( 'http://www.cpan.org/src/stable.tar.gz',
            ':content_file' => 'stable.tar.gz' );

这应该与 - > post一起使用。