我正在使用Htmlunit(浏览器自动化/测试工具)来浏览一系列链接或在页面上执行一系列操作。 在此之后的某个时刻,我想在浏览器中看到生成的页面(Internet Explorer或Firefox等) 我怎样才能做到这一点。 ?谢谢朋友......
答案 0 :(得分:0)
我希望我能帮到你。
这是我的解决方案:
WebClient wc = new WebClient();
HtmlPage page = wc.getPage("http://stackoverflow.com/");
//Get page as Html
String htmlBody = page.getWebResponse().getContentAsString();
//Save the response in a file
String filePath = "c:/temp/out.html";
BufferedWriter bw = new BufferedWriter(new FileWriter(new File(filePath)));
bw.write(htmlBody);
bw.close();
//Open the page with a browser
Runtime.getRuntime().exec("C:/Program Files/Internet Explorer/iexplore.exe " + filePath);
希望有所帮助。
答案 1 :(得分:0)
您还可以在执行真实浏览器之前使用htmlPage.save(文件)(自动保存图像)
答案 2 :(得分:0)
我认为这是他的想法
//获取页面为Html
HtmlPage page = wc.getPage(“http://stackoverflow.com/”);
//创建文件对象
文件文件=新文件(“c:// temp // out”);
//保存页面图像
page.save(文件);
答案 3 :(得分:0)
使用HtmlPage.save(File)
方法将页面保存到文件后,
您可以使用java.awt.Desktop
API在系统上的默认应用程序中打开文件(即,如果文件扩展名为“ .html”,则为网络浏览器)
示例:
HtmlPage page = webClient.getPage("http://example.com/");
File file = File.createTempFile("example", ".html");
page.save(file);
Desktop.getDesktop().open(file);
这可以在任何OS /浏览器上使用。
信用::感谢this answer为启动网络浏览器提供了java.awt.Desktop
解决方案的建议。