javaFX - Показать reCaptcha - PullRequest
       34

javaFX - Показать reCaptcha

0 голосов
/ 19 октября 2018

Я пытаюсь отправить запрос в Google (явно без API).проблема в том, что гугл распознает подозрительную передачу данных и сеет мне капчу «я не робот» (reCaptcha).Я хочу показать это пользователю, и он / она может завершить его, чтобы продолжить.Я использую javaFX webView с webEngine.Я могу показать его пользователю, но, несмотря на то, что я правильно определяю код проверки, он говорит, что я ошибся в этом ... Так вот мой код:

        URI uri = URI.create(url);
        Map<String, List<String>> headers = new LinkedHashMap<String, List<String>>();
        headers.put("Set-Cookie", Arrays.asList("APISID=E2mcDXOq7ze9A2Vg/Ar9qIklbtuxLfJA1Z", "CONSENT=YES+DE.de+20160612-12-0", "HSID=AZqBaYgd1dLE0PVXI"));
        try {
            java.net.CookieHandler.getDefault().put(uri, headers);
        } catch (IOException e) {
            e.printStackTrace();
        }

        WebEngine webEngine = wvCaptchaView.getEngine();
        webEngine.setUserAgent("Mozilla/5.0 (Linux) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.37");
        webEngine.setJavaScriptEnabled(true);

        com.sun.javafx.webkit.WebConsoleListener.setDefaultListener(
                (webView, message, lineNumber, sourceId) ->
                        System.out.println("Console: [" + sourceId + ":" + lineNumber + "] " + message)
        );
        webEngine.load(url);

Я также думаю, что это выглядит неправильно, потому что, щелкая плитку в капче, я думаю, что иногда она показывает галочку в неправильном месте.Есть что-то, чего мне не хватает?Заранее спасибо.

...