Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 7th, 2012  |  syntax: None  |  size: 0.90 KB  |  hits: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Why does Mechanize login keep failing?
  2. #!/home/webadmin/.rvm/rubies/ruby-1.9.3-p0/bin/ruby
  3.  
  4. require 'rubygems'
  5. require 'mechanize'
  6. require 'logger'
  7.  
  8. passwd = gets.chomp
  9.  
  10. a = Mechanize.new do |agent|
  11.    agent.user_agent_alias = 'Windows Mozilla'
  12.    agent.log = Logger.new(STDOUT)
  13. end
  14.  
  15. page = a.get('https://it210.it.et.byu.edu/accounts/login/?next=/')
  16. puts "n=== Login Page ==="
  17. pp page
  18. form = page.forms.first
  19. form['username'] = 'user'
  20. form['password'] = passwd
  21. #pp form
  22. page = a.submit(form, form.buttons.first)
  23. #page = form.submit
  24.  
  25. puts "nnn=== Next Page (should be homepage) ==="
  26. pp page
  27.        
  28. $browser.get("something")
  29. login_page = $browser.page.links.find { |l| l.text == 'Login' }.click
  30.  
  31. username_field = login_page.form.field_with(:name => "username")
  32. username_field.value = $username
  33. password_field = login_page.form.field_with(:name => "password")
  34. password_field.value = $password
  35.  
  36. login_page.form.submit