2011-05-08 130 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')