惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
博客园_首页
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
S
SegmentFault 最新的问题
量子位
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 司徒正美
博客园 - Franky
Google DeepMind News
Google DeepMind News
Recent Announcements
Recent Announcements
B
Blog RSS Feed
C
Check Point Blog
The Cloudflare Blog
M
MIT News - Artificial intelligence
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Fortinet All Blogs
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
V
Visual Studio Blog
V
V2EX
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 灌木大叔

win10LTCS2021下载激活 程序员在线工具 宽带、IPTV及语音共享同一根网线传输原理 NFS与iSCSI Target性能比较 VMware vSphere安装 chrome插件脚本background_script和content_script chrome跨域设置 html5ajax上 传文件代码 Proxmox Virtual Environment(简称PVE)介绍 openwrt(LEDE)路由器简单设置 无损压缩FLAC,APE与WAV 创新的出路 走进作坊 团队--动物世界 vs2010+转换到 COFF 期间失败 windows删除用户时用户不属于此组 word无法创建工作文件,IE打开网页很慢 linux进程VIRT虚拟内存数值高 Java命令如何编译项目 UML(统一建模语言)应用 UML(统一建模语言)类关系
java解析html的table元素
灌木大叔 · 2024-04-22 · via 博客园 - 灌木大叔

java解析html的table元素

解析HTML Table 元素的 Java 实现
在网页开发中,HTML 的 Table 元素是用来展示数据的一种常见方式。有时候我们需要从网页中提取表格中的数据,这就需要使用 Java 对 HTML Table 进行解析。本文将介绍如何使用 Java 实现对 HTML Table 元素的解析,以及一些常见的操作方法。

使用 Jsoup 解析 HTML
在 Java 中,我们可以使用 Jsoup 这个工具库来解析 HTML。Jsoup 提供了简洁的 API,方便我们对 HTML 文档进行解析和操作。

首先,我们需要在 Maven 项目中添加 Jsoup 的依赖:

org.jsoup jsoup 1.13.1

接下来,我们可以使用 Jsoup 提供的 API 来解析 HTML。假设我们有一个包含表格的 HTML 文档:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

public class HtmlParser {
    public static void main(String[] args) throws Exception {
        String html = "<table><tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr></table>";
        Document doc = Jsoup.parse(html);
        
        Element table = doc.select("table").first();
        
        Elements rows = table.select("tr");
        for (Element row : rows) {
            Elements cells = row.select("td");
            for (Element cell : cells) {
                System.out.print(cell.text() + "\t");
            }
            System.out.println();
        }
    }
}

以上代码会输出表格中的数据:

1 2
3 4
表格数据操作
除了解析表格数据,我们还可以对表格进行一些操作,比如筛选特定的行或列,修改数据等等。下面是一些常见的操作方法:

筛选特定的行或列

// 筛选第一行数据
Element firstRow = rows.get(0);
System.out.println(firstRow.text());

// 筛选第一列数据
for (Element row : rows) {
    Elements cells = row.select("td:first-child");
    System.out.println(cells.text());
}

修改数据

// 修改第一行第一列的数据
Element cell = rows.get(0).select("td").get(0);
cell.text("5");
System.out.println(cell.text());