如何在Java代码中通过Firefox、Chrome、PhantomJS保存页面

如何在Java代码中通过Firefox、Chrome、PhantomJS保存页面,java,webdriver,Java,Webdriver,我想在Chrome或FireFox中保存像Ctrl+S这样的网站,如何在Java中保存?使用HtmlUnit HtmlUnit是一款“Java程序的无GUI浏览器”。它为HTML文档建模,并提供一个API,允许您调用页面、填写表单、单击链接等。。。就像在“普通”浏览器中一样 更多 要保存页面,请使用以下代码: public class SavePage { public static void main(String[] args) throws FailingHttpStatusCo

我想在Chrome或FireFox中保存像Ctrl+S这样的网站,如何在Java中保存?

使用HtmlUnit

HtmlUnit
是一款“
Java程序的无GUI浏览器”。它为HTML文档建模,并提供一个API,允许您调用页面、填写表单、单击链接等。。。就像在“普通”浏览器中一样

更多

要保存页面,请使用以下代码:

public class SavePage {

    public static void main(String[] args) throws FailingHttpStatusCodeException, MalformedURLException, IOException {

        WebClient client = new WebClient();
        HtmlPage page = client.getPage("https://www.google.co.in");

        FileWriter writer = new FileWriter("d:\\google.html");
        writer.write(page.asXml()); //Save page on file system 
        writer.close(); 
    }
}

但是HTMLunit有时崩溃是因为我打开了很多页面。不管怎样,请告诉我如何以HTML单位保存页面,如Chrome中的“Ctrl+S”,您可以使用page.getWebResponse().getContentAsString()来保存页面代替了asXml,但它不会检索图像和css。我不认为htmlunit提供了任何从页面下载所有内容的方法。您必须编写方法来下载图像和css