一尘不染

如何保存完整的网页

selenium

有什么方法可以使用WebDriver保存完整的网页吗?

当前,我执行getPageSource(),然后将所有内容放入html本地文件中,但是保存的页面的形状不好(奇怪的字符,没有图像,所有元素向下偏移)

请参阅以下我使用的代码:

   @Test
   public void testSomeThing(){
     FirefoxDriver driver = new FirefoxDriver();
     driver.get("http://google.com");
     String pageSource = driver.getPageSource();
     writeInFile(System.getProperty("user.dir")+"/target/logs/testPage.html", pageSource);
   }

   public static void writeInFile(String sFileName, String sTextToWrite){
         FileWriter outFile;
         General.sendComments("Write to file: " + sFileName);
         try {
                outFile = new FileWriter(sFileName);
                PrintWriter out = new PrintWriter(outFile);
                out.print(sTextToWrite);
                out.close();
         } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
         }
   }

有人可以建议我使用WebDriver在Firefox中保存完整网页的方法吗?例如自动?


阅读 285

收藏
2020-06-26

共1个答案

一尘不染

奇怪的字符可能与写入文件的编码有关。

其他问题可能与以下事实有关:正在加载静态html文件,相对url不再指向该文件。所有的javascript,css和图片文件都将丢失。

2020-06-26