Здравствуйте, пытаюсь залогиниться посредством Java и Jsoup на сайт
flymer.ru/login , но ничего не выходит.
Что делаю я:
Document getKeys; // здесь будем загружать сайт, чтобы пропарсить исходник страницы для ключей
Connection.Response loginForm = null; // здесь будем логинимся
Document document = null; // здесь будем грузить страничку после логина
String fkey =""; // один из ключей, которых передает форма
String lkey ="";// один из ключей, которых передает форма
String URL = "http://flymer.ru/login"; // ссылка на страницу с формой логина
String mail = "почта";
String password = "пароль";
try {
getKeys = Jsoup.connect("http://flymer.ru/login").get(); // открываем страницу
fkey = getKeys.select("input[name=fkey]").get(0).attr("value"); // берем значения fkey
lkey = getKeys.select("input[name=lkey]").get(0).attr("value");// берем значение lkey
loginForm = Jsoup.connect("http://flymer.ru/request/login") // логинимся, ссылка взята из атрибута action формы
.userAgent("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36 OPR/41.0.2353.46")
.data("email", mail) // заполняем данные формы
.data("pass", password)
.data("agree","1")
.data("fkey",fkey)
.data("lkey",lkey)
.data("dkey",dkey)
.method(Connection.Method.POST) // метод POST
.execute();
// открываем новую страницу уже залогинившись
document = Jsoup.connect("http://flymer.ru/bin").cookies(loginForm.cookies()).get();
}catch(IOException ie)
{
ie.printStackTrace();
}
Оно, наверное, и понятно почему не работает: отправляются не все данные формы (а может и еще что), но третий key отсутствует в html страничке.
Так вот, друзья, как сделать это правильно, и чтобы работало?
И чтобы сохранить возможность дальнейшего парсинга страниц уже залогинившись.
А вот и сама картинка запроса: