0

我想要给定 HtmlPage 对象的整个 HTML。

我应该使用什么属性?

4

2 回答 2

3

在 HtmlUnit 中,anHtmlPage实现了Page接口;这意味着您可以使用Page#getWebResponse()获取返回的整个 Web 响应来生成HtmlPage,并且从那里很容易 ( WebResponse#getContentAsString())。这是一种可以满足您的要求的方法...

public String getRawPageText(WebClient client, String url)
        throws FailingHttpStatusCodeException, MalformedURLException, IOException {
    HtmlPage page = client.getPage(url);
    return page.getWebResponse().getContentAsString();
}

或者,使用HtmlPage您已经获取的对象:

public String getRawPageText(HtmlPage page) {
    return page.getWebResponse().getContentAsString();
}
于 2010-01-06T03:09:20.793 回答
1

最快的方法是HtmlPage.asXml——它可能并不完美,例如,它可能与您在普通浏览器中执行“查看源代码”时看到的不完全匹配,但我发现它对开发和调试 HtmlUnit 代码。

于 2010-01-06T03:08:50.497 回答