2010-12-16 132 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();來提交它。