我正在处理网络抓取项目,但我无法定位不属于表单的输入。像这样:
<div>
Book name: <input type="text" name="book" /><br />
Student: <input type="text" name="student" /><br />
<input type="button" id="btnSubmit" value="Submit" />
</div>
Ajax电话:
$("#btnSubmit").on('click', function() {
type: "POST",
url: "borrow.php",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
book: $("input[name='book']").val(),
student: $("input[name='student']").val()
}),
dataType: "json",
success: function (result) { ... }
});
我只是想知道我是否可以使用Mechanize来输入数据并提交所谓的表格。
我尝试使用post()直接POST数据,但success()函数处理的指令太多,所以我想点击提交按钮。
答案 0 :(得分:0)
我今天通过以下方式解决了这个问题:
my $m = WWW::Mechanize->new();
# Or however else you get your form data to submit
my $field1 = shift($m->find_all_inputs(name => 'field1'))->value;
my $field2 = shift($m->find_all_inputs(name => 'field2'))->value;
$m->post('http://somesite.com/expectsPost.cgi',
{ field1 => $field1,
field2 => $field2,
action => 'DoSomethingCool' });
my $result = $m->content;
希望这有帮助!