使用Perl中的WWW :: Mechanize从下拉菜单中选择元素

时间:2015-09-29 15:55:39

标签: perl www-mechanize

我正在尝试编写一个小程序,从下拉菜单中选择值并提交表单以访问下一页,这是HTML页面的片段:

<form name='formulaire' method='post' action=''>
<select class="sel_box" name="MENU" >

<option value='val1' SELECTED >value1</option>
<option value='val2'  >value2</option>
<option value='val3' >value3</option>
</select>
<input type='image' value='' src='ok.gif' border='0'>
<input type=hidden name='numTab' value='3'>
</form>

我使用select()和submit(),如下所示:

use strict;
use warnings;
use WWW::Mechanize::Firefox;

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

$mech->get_local('test.html');
$mech->select('MENU', 'val3');
$mech->submit();

我正在接受这个

找不到.// * [(local-name(。)=&#34;输入&#34;或本地名称(。)=&#34;选择&#34;或本地名称(。 )=&#34; textarea&#34;)和@name =&#34; MENU&#34;]

我做错了什么?

非常感谢

1 个答案:

答案 0 :(得分:0)

我收到了不同的错误:

I don't know which form to submit, sorry.

通过在get_local之后添加以下行,可以轻松解决这个问题:

$mech->form_name('formulaire');