JSOUP не остается в системе - PullRequest
       19

JSOUP не остается в системе

0 голосов
/ 24 августа 2018

В настоящее время приведенный ниже код будет работать, так как println подтверждает, что он действительно вошел в систему:

        final String USER_AGENT = "\"Mozilla/5.0 (Windows NT\" +\n" +
                "          \" 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2\"";
        HashMap<String, String> cookies = new HashMap<>();
        HashMap<String, String> formData = new HashMap<>();
        Connection.Response loginForm = Jsoup.connect("********************/login/").method(Connection.Method.GET).userAgent(USER_AGENT).timeout(7000).validateTLSCertificates(false).execute();
        Document loginDoc = loginForm.parse();

        cookies.putAll(loginForm.cookies());

        String form_key = loginDoc.select("input[type=\"hidden\"]").first().attr("value");  // save the cookies, this will be passed on to next request
        formData.put("login[username]", "***********");
        formData.put("login[password]", "****");
        formData.put("form_key", form_key);
        formData.put("send", "");

        Connection.Response homePage = Jsoup.connect("*****************.com/loginPost/").cookies(cookies).data(formData).method(Connection.Method.POST).userAgent(USER_AGENT).timeout(7000).validateTLSCertificates(false).execute();
        System.out.println(homePage.parse().html());

При добавлении еще одной строки программа не остается в системе для нового веб-местоположения.

        Connection.Response homePage2 = Jsoup.connect(url).cookies(cookies).data(formData).method(Connection.Method.POST).userAgent(USER_AGENT).timeout(7000).validateTLSCertificates(false).execute();
        System.out.println(homePage2.parse().html());

Моя основная задача - собирать информацию, используя это при входе в систему:

        Document doc = Jsoup.connect(url).userAgent(USER_AGENT).timeout(2500).cookies(cookies).data(formData).validateTLSCertificates(false).method(Connection.Method.POST).get();
        return doc.select(".dealer-price").text();

Конечно, это тоже не работает.Я не уверен, как действовать дальше, это проблема с jsoup или я могу что-то исправить?ТИА

...