我正在尝试使用HtmlUnit创建一个机器人来自动从网站上获取一些产品,我要列出产品,但该网站有几个分支,并且我要更改为我想要的分支,我需要更改选择并单击按钮的值,但在我单击按钮后,我有与以前相同的页面,它不会更改任何内容,它不会返回任何错误或警告,是否有人给我一个手?
final HtmlPage page = webClient.getPage("url");
final HtmlSelect select = (HtmlSelect) page.getElementById("s-ch-select-city");
select.setSelectedAttribute("8", true);
ScriptResult resultFinal = page.executeJavaScript("document.getElementById('s-ch-change-channel').focus()");
webClient.waitForBackgroundJavaScript(10000);
webClient.waitForBackgroundJavaScriptStartingBefore(10000);
synchronized (page) {
page.wait(10000);
}
Page pageResultFinal = resultFinal.getNewPage();
HtmlPage pageCascavel = ((HtmlPage) pageResultFinal);
答案 0 :(得分:0)
无法访问该页面我只能猜测。
尝试替换
Page pageResultFinal = resultFinal.getNewPage();
与
Page pageResultFinal = page.getEnclosingWindow().getTopWindow().getEnclosedPage();
并检查以记录任何错误。 另外我认为不需要做js的东西。你可以做点什么
page.getElementById("s-ch-change-channel").focus();