使用正确的信息机械化表单提交失败

时间:2014-03-25 22:22:51

标签: ruby mechanize

我正在尝试使用gem Mechanize 在Ruby中提交表单,即使我已确认使用

正确设置了字段数据
pp login_form.username
pp login_form.password

表单提交失败并返回此帖子底部的输出。可能会导致哪些因素导致我的提交失败?

代码

#!/usr/bin/env ruby
# encoding: utf-8

require "mechanize"

# Prepare Mechanize agent
agent = Mechanize.new do |a|
  a.user_agent_alias = 'Mac FireFox'
  a.follow_meta_refresh = true
end

# Retrieve login form
chess_url = "https://www.chess.no"
login_form = agent.get(chess_url).form_with(:dom_id => "mypageform_id")

# Fill login form
login_form.username = 'myuser'
login_form.password = 'mypass'

# Submit login form
my_page = agent.submit(login_form, login_form.buttons.first)

pp my_page

输出(由pp my_page生成)

#<Mechanize::File:0x007f9bbd008b28
@body=
"{\"status\":\"error\",\"errorcode\":99,\"message\":\"Invalid username or password\",\"context\":\"userlogin\"}",
@code="200",
@filename="login.html",
@full_path=false,
@response=
  {"date"=>"Tue, 25 Mar 2014 22:09:20 GMT",
   "server"=>"Apache/2.2.22 (Ubuntu)",
   "x-powered-by"=>"PHP/5.3.10-1ubuntu3.7",
   "cache-control"=>"no-cache",
   "x-server-name"=>"c01web06.keyteq.no",
   "keep-alive"=>"timeout=3",
   "connection"=>"Keep-Alive",
   "transfer-encoding"=>"chunked",
   "content-type"=>"application/json"},
@uri=#<URI::HTTPS:0x007f9bbd03bc30 URL:https://www.chess.no/cat/mypage/login>>

0 个答案:

没有答案