пытаясь отправить с рубином механизировать - PullRequest
11 голосов
/ 28 августа 2010

Я записал HTTP-заголовки для входа с помощью плагина Firefox LiveHTTPheaders.

Я нашел следующие URL и переменные.

POST /login
email=myemail%40gmail.com&password=something&remember=1&loginSubmit=Login

И вот код, который я запускаю:1006 *

require 'rubygems'
require 'mechanize'


browser = Mechanize.new
browser.post('http://www.mysite.com/login',
[
["email","myemail%40gmail.com"],
["password","something"],
["remember","1"],
["loginSubmit","Login"],
["url"=>""]
]
) do |page|
puts page.body
end

Впрочем, это мне ничего не дает!что-то не так с параметрами моего сообщения?

1 Ответ

19 голосов
/ 28 августа 2010

post () не принимает блок. Попробуйте это:

page = browser.post('http://www.mysite.com/login', {
  "email" => "myemail%40gmail.com",
  "password" => "something",
  "remember" => "1",
  "loginSubmit" => "Login",
  "url" => ""
})

редактировать: изменено для точности

...