Я пытаюсь использовать HtmlUnit для автоматизации входа на сайт, а именно на nike.com.Проблема, с которой я сталкиваюсь, состоит в том, что вход в систему не обрабатывается отдельной страницей, а вместо этого появляется на том же сайте, когда пользователь нажимает кнопку входа в систему на сайте.Поиск кнопки работает нормально, но я не могу получить обновленную версию веб-сайта с загруженной формой входа после нажатия кнопки входа.Код ниже никогда не сможет найти форму входа.Я пытался использовать как AjaxController, так и ожидание javascript, но безрезультатно.
Любая помощь будет принята с благодарностью.
public void nikeLogin() {
try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) {
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
HtmlPage page = webClient.getPage("https://nike.com/de/launch");
HtmlElement button = page.getFirstByXPath("/html/body/div[2]/div/div/div[1]/div/header/div[1]/section/ul/li[1]/button");
HtmlPage page2 = button.click();
webClient.waitForBackgroundJavaScript(1000);
List textFields = page2.getForms();
if(textFields.isEmpty()) {
System.out.println("No Forms found");
} else {
System.out.println("Login form found");
}
} catch (Exception e) {
e.printStackTrace();
}
}