【发布时间】:2015-09-29 15:55:39
【问题描述】:
我正在尝试编写一个从下拉菜单中选择值并提交表单以访问下一页的小程序,这是 HTML 页面的 sn-p:
<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(.)="input" or local-name(.)="select" or local-name(.)="textarea") 和 @name= 的元素"菜单"]
我做错了什么?
非常感谢
【问题讨论】:
-
也许先选择一个表格?
$mech->form_name('formulaire'); -
这看起来像是 $mech->xpath 方法的错误。您是在代码中的其他地方调用它吗?
标签: perl www-mechanize