当前位置:首页 > Java

如何java读网页

2026-03-23 00:12:34Java

使用 Java 读取网页内容

使用 java.net.URLjava.io.BufferedReader

通过 URL 类和 BufferedReader 可以快速读取网页内容。以下是示例代码:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;

public class ReadWebPage {
    public static void main(String[] args) throws Exception {
        URL url = new URL("https://example.com");
        BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
        reader.close();
    }
}

使用 HttpURLConnection 处理 HTTP 请求

HttpURLConnection 提供了更多控制选项,例如设置请求方法、超时和头部信息:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class ReadWebPageWithConnection {
    public static void main(String[] args) throws Exception {
        URL url = new URL("https://example.com");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setRequestMethod("GET");
        conn.setConnectTimeout(5000);
        conn.setReadTimeout(5000);

        BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
        reader.close();
    }
}

使用第三方库(如 Apache HttpClient)

Apache HttpClient 提供了更高级的功能和更简洁的 API:

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class ReadWebPageWithHttpClient {
    public static void main(String[] args) throws Exception {
        CloseableHttpClient client = HttpClients.createDefault();
        HttpGet request = new HttpGet("https://example.com");
        CloseableHttpResponse response = client.execute(request);
        String content = EntityUtils.toString(response.getEntity());
        System.out.println(content);
        response.close();
        client.close();
    }
}

使用 Jsoup 解析 HTML

如果需要解析 HTML 内容,可以使用 Jsoup 库:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

public class ParseWebPageWithJsoup {
    public static void main(String[] args) throws Exception {
        Document doc = Jsoup.connect("https://example.com").get();
        String title = doc.title();
        System.out.println("Title: " + title);
    }
}

处理异常和超时

在实际应用中,需要处理网络异常和超时:

如何java读网页

try {
    URL url = new URL("https://example.com");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setConnectTimeout(5000);
    conn.setReadTimeout(5000);
    // 其他操作
} catch (Exception e) {
    e.printStackTrace();
}

总结

  • 对于简单需求,使用 URLBufferedReader 足够。
  • 需要更多控制时,使用 HttpURLConnection
  • 高级功能(如连接池、重试)可选用 Apache HttpClient。
  • 解析 HTML 内容时,Jsoup 是理想选择。

标签: 读网java
分享给朋友:

相关文章

java如何创建类

java如何创建类

创建类的基本语法 在Java中,类通过class关键字定义,语法如下: [访问修饰符] class 类名 { // 成员变量(属性) // 构造方法 // 成员方法 }…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

如何编写java

如何编写java

编写Java程序的基本步骤 安装Java开发工具包(JDK),确保系统环境变量配置正确。可以从Oracle官网下载最新版本的JDK并进行安装。 选择一个合适的集成开发环境(IDE),如Eclipse…

如何编译java

如何编译java

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证是否安装成功。若未安装,需从Oracl…

java如何产生随机数

java如何产生随机数

使用 Math.random() 方法 Math.random() 生成一个范围在 [0.0, 1.0) 的伪随机 double 值。通过缩放和偏移可以生成指定范围的随机数。 double ra…

java如何调试

java如何调试

调试Java程序的基本方法 使用IDE内置的调试工具(如IntelliJ IDEA或Eclipse)是最常见的方式。在代码行号旁点击设置断点,启动调试模式后,程序会在断点处暂停,允许查看变量值、调用栈…