2010-12-16 90 views
0

出于测试目的,我想写使用WWW ::机械化一个脚本,将通过https://api.gowalla.com/signin选择形式

登录到Gowalla的,我可以看到登录表单没有“名称”属性,但它有一个“id”属性。 机器人有一个“submit_form”方法,可以获取作为参数的名称,但我没有看到它接受作为参数的id。

所以那会是那么

$w->form_id('form_signin'); 
$w->submit_form(
fields => { 
    username => $username, 
    user_session_password => $password, 
}); 

回答

2

您选择了通过id属性的形式,但不允许你使用id属性来选择字段,这样就可以解决您的代码:

$w->submit_form(
fields => { 
    user_session[username] => $username, 
    user_session[username] => $password, 
}); 

如果出现错误,请将字段名称用单引号括起来,但不确定方括号是否会成为问题。

0

WWW :: Mechanize自动将焦点设置到单个窗体上。你可以用$ m->点击('')或$ m-> submit();来提交它。