Ich benutze Web-Client zum Abrufen der Seitenquelle. Ich habe mich erfolgreich eingeloggt. Danach verwende ich gleiche Objekt für Seite Quelle bekommen andere URL verwenden, aber es zeigt eine Ausnahme wie:So erhalten Sie eine Daten authentifizierte Seite mit Web-Client
java.lang.ClassCastException: com.gargoylesoftware.htmlunit.UnexpectedPage cannot be cast to com.gargoylesoftware.htmlunit.html.HtmlPage
Dies ist der Code, die ich verwende.
forms = (List<HtmlForm>) firstPage.getForms();
form = firstPage.getFormByName("");
HtmlTextInput usernameInput = form.getInputByName("email");
HtmlPasswordInput passInput = form.getInputByName("password");
HtmlHiddenInput redirectInput = form.getInputByName("redirect");
HtmlHiddenInput submitInput = form.getInputByName("form_submit");
usernameInput.setValueAttribute(username);
passInput.setValueAttribute(password);
//Create Submit Button
HtmlElement button = firstPage.createElement("button");
button.setAttribute("type", "submit");
button.setAttribute("name", "submit");
form.appendChild(button);
System.out.println(form.asXml());
HtmlPage pageAfterLogin = button.click();
String sourc = pageAfterLogin.asXml();
System.out.println(pageAfterLogin.asXml());
/////////////////////////////////////////////////////////////////////////
oben Code läuft erfolgreich und anmelden Danach habe ich diesen Code verwende
HtmlPage downloadPage = null;
downloadPage=(HtmlPage)webClient.getPage("url");
Aber ich bin immer Ausnahme
java.lang.ClassCastException: com.gargoylesoftware.htmlunit.UnexpectedPage cannot be cast to com.gargoylesoftware.htmlunit.html.HtmlPage
Wird die Seite eine gültige HTML-Seite zurückgegeben? –
ja dies ist eine gültige html-Seite zurück. – narendra