当前位置: 首页>>技术教程>>正文


使用WWW :: Mechanize自动提交HTML表单

, ,

这是有关如何使用Linux命令行和perl脚本自动提交HTML表单的简短提示。对于此示例,我们需要一个WWW :: Mechanize perl模块和一些基本的PHP网站。让我们从简单的PHP网站开始。该网站将包含两个文件:

form.php:

<form action="submit.php" method="post">
First Name: <input name="fname" type="text" />
Last Name: <input name="lname" type="text" />
<input type="submit" />
</form>

Submit.php

<html>
<body>
First Name: <?php echo $_POST["fname"]; ?><br />
Last Name: <?php echo $_POST["lname"]; ?>
</body>
</html>

将这两个文件上传到Web服务器的目录并更改其权限:

chmod 755 form.php submit.php

如果尚未安装,请安装WWW :: Mechanize。在Debian或Ubuntu上会是这样的:

# apt-get install libwww-mechanize-perl

并创建一个名为具有以下内容:

#!/usr/bin/perl

use WWW::Mechanize;
my $mech = WWW::Mechanize->new();

$url = 'http://localhost/form.php';
$mech->get( $url );

  $mech->submit_form(
        form_number => 1,
        fields      => {
            fname    => 'www',
            lname    => 'mechanize',
        }
    );

print $mech->content();

注意上面脚本中的URL。编辑此URL以适合您的设置。使脚本可执行:

$ chmod +x mechanize.pl

现在执行此脚本并将所有输出重定向到index.html

./mechanize.pl > index.html

如果一切正常,请使用浏览器打开index.html,您应该看到:


名:www
姓氏:机械化


参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11282.html,未经允许,请勿转载。