我看到的所有 htmlunit 示例都使用 通过 URL 从网站检索 HTML。 getPage .
WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage("http://htmlunit.sourceforge.net");
我在字符串变量中保存了一个 HTML 片段,但找不到从变量中为其提供 HTML 的方法。
我试过将字符串转换为 HtmlPage 但这不起作用。
HtmlPage page = (HtmlPage) htmlFragment
最佳答案
也许您可以将 HTML 片段(可能包含在标准 html/head/body 标签中)写入临时文件,并将其 URL 用于您的 Web 客户端。例如(未经测试):
File tempFile = File.createTempFile("fragment", "html");
HtmlPage startPage = webClient.getPage(tempFile.toURI().toURL().toString());
tempFile.deleteOnExit();
或者,您也可以 construct your own
HtmlPage
带有虚假 URL 和临时 WebResponse
和 WebWindow
但这可能需要大量的黑客攻击。
关于java - 从变量中读取 HTML 源代码到 HTMLUNIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8906075/