当前位置:首页 > 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 提供了更多控制选项,例如设置请求方法、超时和头部信息:

如何java读网页

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:

如何java读网页

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);
    }
}

处理异常和超时

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

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的步骤 Windows系统卸载方法 打开控制面板,选择“程序和功能”或“卸载程序”。在列表中找到Java相关条目(如“Java 8 Update 251”),右键选择卸载并跟随向导完成操…

如何运行java文件

如何运行java文件

运行Java文件的方法 确保已安装Java Development Kit (JDK),可通过命令行输入java -version和javac -version验证安装。 编写Java代码并保存为.…

java如何创建项目

java如何创建项目

使用IDE创建Java项目(以IntelliJ IDEA为例) 打开IntelliJ IDEA,选择“New Project”。 在左侧菜单中选择“Java”,确保已配置JDK(若无需手动添加)。 勾…

如何学好java编程

如何学好java编程

理解基础概念 掌握Java的基础语法是学习的起点。变量、数据类型、运算符、控制结构(如循环和条件语句)是核心内容。面向对象编程(OOP)的概念(类、对象、继承、多态、封装)是Java的核心,需深入理解…

java实现js

java实现js

Java 实现 JavaScript 功能 在 Java 中实现 JavaScript 功能通常涉及以下几种方法: 使用 ScriptEngine Java 提供了 javax.script 包,可…

如何查看java版本

如何查看java版本

查看Java版本的命令行方法 在终端或命令提示符中运行以下命令,可以快速查看已安装的Java版本: java -version 输出示例: java version "17.0.1" 20…