用Java下载网页

我们可以使用Java中的URL下载网页。以下是所需的步骤。

  • 使用url字符串创建URL对象。

    Download webpage in Java
  • 使用url.openStream()方法创建一个BufferReader对象。

    BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
  • 创建一个BufferWriter对象以写入文件。

    BufferedWriter writer = new BufferedWriter(new FileWriter("page.html"));
  • 使用BufferReader读取每一行,并使用BufferWriter写入。

    String line;
    while ((line = reader.readLine()) != null) {
    writer.write(line);
    }

以下是在当前位置下载给定URL页面的完整程序。

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;

public class Tester {
   public static void main(String args[]) throws IOException {
      download("http://www.google.com");
   }
   public static void download(String urlString) throws IOException {
      URL url = new URL(urlString);
      try(
         BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
         BufferedWriter writer = new BufferedWriter(new FileWriter("page.html"));
      ) {
         String line;
         while ((line = reader.readLine()) != null) {
            writer.write(line);
         }
         System.out.println("页面已下载。");
      }
   }
}

输出结果

页面已下载。