Jsoup1.22.1发布,HTML解析器更新详解
时间:2026-01-29 08:12:43 100浏览 收藏
你在学习科技周边相关的知识吗?本文《Jsoup 1.22.1 发布,Java HTML 解析器更新》,主要介绍的内容就涉及到,如果你想提升自己的开发能力,就不要错过这篇文章,大家要知道编程理论基础和实战操作都是不可或缺的哦!

jsoup 1.22.1 已正式发布,本次更新引入了对 re2j 正则表达式引擎的支持(专用于正则驱动的 CSS 选择器)、可自定义的最大解析深度设置,并包含多项缺陷修复与功能优化。
功能增强
- 新增对
re2j正则引擎的支持,适用于基于正则的 CSS 选择器语法(如[attr~=regex]、:matches(regex)),显著提升处理用户输入正则表达式的安全性。启用方式:将com.google.re2j添加至类路径,例如:
若类路径中已存在该依赖但希望回退至 Java 原生正则引擎,可通过 System.setProperty("jsoup.useRe2j", "false") 显式禁用;调用 Regex.usingRe2j() 可验证 re2j 是否已成功激活。#2407
- 新增实例方法
Parser#unescape(String, boolean),利用当前解析器配置执行 HTML 实体解码(例如支持错误定位),作为已有静态工具方法Parser.unescapeEntities(String, boolean)的补充实现。#2396 - HTML 与 XML 解析器均支持配置最大解析嵌套深度(限制栈中活跃元素数量)。HTML 解析器默认深度设为 512,以对齐主流浏览器行为并防范栈溢出风险;XML 解析器默认不限制深度,但可通过
Parser.setMaxDepth()手动设定上限。#2421 - 构建流程升级:CI 环境新增 JDK 25 兼容性测试覆盖。#2403
- 构建流程升级:在原有完整 HTML/XML 模糊测试基础上,新增针对上下文片段解析的模糊测试模块(由 oss-fuzz 提供支持,ID: #14041)。
API 变更
- 启动 jsoup 1.24.1 版本中废弃 API 的移除路线图,相关接口将在后续版本中逐步淘汰。
问题修复
- 修复
Node#replaceWith(Node)方法中未及时清除被替换节点缓存子元素的问题,避免后续调用Element#children()返回异常结果。#2391 - 属性选择器值现严格按字面量比对且不再自动裁剪首尾空白。此前版本会同时清理选择器值与元素属性值中的空格,导致行为偏离 CSS 规范及浏览器实际表现(如
[attr=" foo "]匹配失败)。现已完全对齐标准。#2380 - 使用 JDK 内置 HttpClient 时,系统级代理(
ProxySelector.getDefault())曾被忽略。现已修正:当请求未显式指定代理时,自动采用系统默认代理设置。#2388,#2390 - “adoption agency” 算法在面对严重损坏 HTML 输入时可能抛出
ValidationException。现改为统一记录为解析警告,不中断处理流程。#2393 - HTML 正文内空字符(U+0000)移除逻辑不一致;外部引入内容中的空字符亦未能正确转义。此问题已修复。#2395
- 解析恶意构造的正文片段时偶发
IndexOutOfBoundsException。现捕获并降级为解析错误日志,保障稳定性。#2397,#2406 - ……
内部调整
- 标记内部辅助类
org.jsoup.internal.Functions为已弃用,计划于 v1.23.1 中彻底移除。#2412
完整更新日志请参阅:https://jsoup.org/news/release-1.22.1
源码获取地址:点击下载
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于科技周边的相关知识,也可关注golang学习网公众号。
相关阅读
更多>
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
最新阅读
更多>
-
科技周边 · 业界新闻 | 13小时前 | 业界新闻 · Cloudflare · AI Gateway · Spend Limits · AI成本 · Cloudflare AI Gateway Spend Limits AI成本治理 AI预算 模型降级495 收藏
-
科技周边 · 业界新闻 | 14小时前 | Node.js · javascript · 安全版本 · 运行时 · 升级排查 · 业界新闻 Node.js安全版本 Node.js 26.3.0 运行时升级 JavaScript安全308 收藏
-
科技周边 · 业界新闻 | 2天前 | devops · CI/CD · gitHub actions · 业界新闻 · 自托管Runner · DevOps CI/CD GitHub Actions self-hosted runner Runner升级431 收藏
-
科技周边 · 业界新闻 | 2天前 | github · gitHub actions · 业界新闻 · AI代理 · GitHub AI代理 GitHub Actions Agentic Workflows CI分析 Issue分流 工程自动化354 收藏
-
科技周边 · 业界新闻 | 2天前 | 安全 · CI/CD · gitHub actions · 业界新闻 · 开发者工具 · 代码审查 供应链安全 业界新闻 GitHub Actions 机器人PR CI安全473 收藏
-
214 收藏
-
345 收藏
-
356 收藏
-
277 收藏
-
285 收藏
-
270 收藏
-
370 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习