当前位置: 首页 > news >正文

java 中开源的html解析库Jsoup 简单例子

        下面是一个使用Jsoup库解析HTML的简单Java例子。这个例子展示了如何使用Jsoup从一个HTML字符串中提取数据。
        首先,确保你已经将Jsoup作为依赖项添加到你的项目中。如果你使用的是Maven,可以在`pom.xml`文件中添加以下依赖:
        

<dependencies><dependency><groupId>org.jsoup</groupId><artifactId>jsoup</artifactId><version>1.14.3</version> <!-- 请检查最新版本 --></dependency>
</dependencies>


        
然后,你可以使用以下Java代码来解析HTML:
 

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;public class JsoupExample {public static void main(String[] args) {String html = "<html><head><title>Sample Title</title></head>"+ "<body><p>Sample Content</p><div class='links'><a href='https://www.example1.com'>Example1</a>"+ "<a href='https://www.example2.com'>Example2</a></div></body></html>";Document doc = Jsoup.parse(html);// 获取标题String title = doc.title();System.out.println("Title: " + title);// 获取所有链接Elements links = doc.select("a[href]");for (Element link : links) {System.out.println("Link: " + link.attr("href"));System.out.println("Text: " + link.text());}// 获取具有特定类的元素Elements divLinks = doc.select("div.links");for (Element div : divLinks) {System.out.println("Div Class: " + div.className());// 可以进一步操作div元素}}
}

        在这个例子中,我们首先创建了一个包含HTML内容的字符串。然后,我们使用Jsoup.parse()方法来解析这个字符串,并得到了一个Document对象,它可以代表整个HTML文档。
        接着,我们使用Document对象的title()方法来获取文档的标题。使用select()方法,我们可以通过CSS选择器来选择和提取特定的元素。在这个例子中,我们提取了所有<a>标签的href属性和文本内容,以及具有links类的<div>标签。
        这个例子展示了Jsoup的基本用法,包括HTML解析、选择元素和提取属性。Jsoup还有很多其他功能,比如处理实时的HTML文档、修改DOM结构、清理HTML等。

http://www.lryc.cn/news/304219.html

相关文章:

  • Java程序中为什么要使用StringBuilder
  • 【软件架构】02-复杂度来源
  • 怎样让MCU/SFU视频会议ovmedia 接入GB28281监控视频参会互动
  • Spring Boot打war包部署到Tomcat,访问页面404 !!!
  • Docker Desktop 4.27.1 Windows 10 安装 教程
  • 【ARMv8M Cortex-M33 系列 8 -- RT-Thread 移植 posix pthread】
  • fastApi笔记08-Cookie和Header
  • 解决pycharm中PIL安装失败
  • 数据结构哈希表
  • [C#]winform使用引导APSF和梯度自适应卷积增强夜间雾图像的可见性算法实现夜间雾霾图像的可见度增强
  • 【Django】Django自定义后台表单——对一个关联外键对象同时添加多个内容
  • 迷茫?没有努力的方向?没有耐心去坚持?精选书籍推荐2
  • MySQL报错:sql_mode=only_full_group_by解决方法
  • SQL表连接方式
  • 5 原型模式 Prototype
  • springboot java 项目连接es
  • MySQL学习笔记3: MySQL数据库基础
  • GB/T 17640-2023 长丝机织土工布检测
  • MedicalGPT 训练医疗大模型,实现了包括增量预训练、有监督微调、RLHF(奖励建模、强化学习训练)和DPO(直接偏好优化)
  • UE4 C++联网RPC教程笔记(一)(第1~4集)
  • 备战蓝桥杯 Day11(滚动数组优化+完全背包)
  • Java SE 入门到精通—4.抽象类与接口【Java】
  • Python 开发转 Java 简易路线 - 更新中
  • Python编程语言学习
  • Cartographer框架简述
  • 适用于 Linux、Windows 和 macOS 的免费 ONLYOFFICE 桌面应用程序
  • C++面向对象程序设计-北京大学-郭炜【课程笔记(四)】
  • 前端构建效率优化之路
  • react实现拖拽的插件
  • 解决Uncaught SyntaxError: Cannot use import statement outside a module(at XXX)报错