2011-05-08 138 views
0

我試圖讓機械化登錄到fileserve.com我曾嘗試下面機械化麻煩fileserve.com/login.php

require 'rubygems' 
    require 'mechanize' 

    a = Mechanize.new { |agent| 
     agent.user_agent_alias = 'Mac Safari' 
    } 

    a.get('http://fileserve.com/') do |home_page| 
     signin_page = a.click(home_page.link_with(:text => /Login/)) 
     login_page = signin_page.form_with(:name => 'loginForm') do |form| 
     form.loginUserName = 'foo' 
     form.loginUserPassword = 'bar' 
     end.submit 
    end 

    p a.get('http://fileserve.com/dashboard.php') 

代碼然而,它沒有打印出來的控制面板,一個記錄在成員會看到。

有什麼建議嗎?

+0

我會嘗試在irb看看你在每一步得到什麼,確保login_page不是零或類似的東西。 – 2011-05-10 14:54:21

回答

0

就這麼做。我希望,這不是太晚;)

agent = Mechanize.new 
page = agent.get("http://www.fileserve.com/login.php") 
form = page.form_with(:id => 'loginForm') do |form| 
    form.loginUserName = "Foo" 
    form.loginUserPassword = "Bar" 
    form['loginFormSubmit'] = 'Login' 
end.submit 

p a.get('http://fileserve.com/dashboard.php')