0

我正在使用 Htmlunit(浏览器自动化/测试工具)从 URL 获取网页,为某些 HTML 元素(如 textinput 等)添加值,然后我想使用以下语句自动执行“单击操作:

`HtmlPage page2 = button.click();`

然后我想在默认浏览器上显示响应。但。我请求(来自 URL)的 HTML 是带有 javascript 函数的 RAW HTML,在执行时会调用一些 Web 服务,然后才会生成确切的 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 功能..
提前谢谢...!!!

4

1 回答 1

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);
于 2012-05-15T18:02:37.200 回答