我正在使用Htmlunit(浏览器自动化/测试工具)从URL获取网页,为某些HTML元素(如textinput等)添加值,然后我想使用以下语句自动执行"单击操作: BR />
`HtmlPage page2 = button.click();`
然后我想在默认浏览器上显示响应。但。我要求的HTML(来自URL)是带有javascript函数的RAW HTML,在执行时,调用一些webservices,之后才会生成确切的HTML(在浏览器上呈现的HTML)。
因此,我想知道如何在我的java程序中执行这些JS函数,以便我可以获得正确的HTML元素,我正在寻找...
这是我的代码:
final WebClient webClient = new WebClient();
webClient.setJavaScriptEnabled(true);
// Get the first page
final HtmlPage page1 = (HtmlPage)webClient.getPage("http://some URL");
HtmlPage对象page1具有原始JS功能..
答案 0 :(得分:0)
您可以使用WebWindowListener:
WebWindowListener listener = new WebWindowAdapter() {
@Override
public void webWindowOpened(WebWindowEvent event) {
Page newPage = event.getNewPage();
}
@Override
public void webWindowContentChanged(WebWindowEvent event)
{
Page generatedPage = event.getNewPage();
}
}
webClient.addWebWindowListener(listener);