其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

jsoup 1.17.2 发布,Java HTML 解析器

GG网络技术分享 2025-03-18 16:16 0


jsoup 1.17.2 现已发布。jsoup 是一个用于处理 real-worldHTML 的 Java 库。它使用最好的 HTML5 DOM 方法和 CSS 选择器提供了一个非常方便的 API 用于提取和操作数据。

下载地址:https://jsoup.org/download

具体更新内容包括:

改进

  • Attribute object accessors:添加 Element.attribute(String) 和 Attributes.attribute(String) 以便更简单地获取 Attribute 对象。2069

  • Attribute source tracking:如果 source tracking 已打开,并且属性的键已更改(通过 Attribute.setKey(String)),则现在仍会在 Attribute.sourceRange() 中跟踪 source range。2070

  • Wildcard attribute selector:添加了对具有任何属性选择器的 [*] 元素的支持。并且还恢复了对通过空属性名称前缀 ([^]) 选择的支持。2079

Bug 修复

  • Mixed-cased source position:跟踪属性的源位置时,如果源属性名称是混合大小写的,但解析器是小写规范化属性名称,则无法正确跟踪该属性的源位置。2067

  • Source position NPE:跟踪正文片段解析的源位置时,抛出空指针异常。2068

  • Multi-point emoji entity:多点编码的表情符号实体可能会被错误地解码为替换字符。2074

  • Selector sub-expressions:(回归)在像 parent [attr=va], other 之类的选择器中,, OR 被绑定到 [attr=va] 而不是 parent [attr=va],导致不正确的选择。该修复包含一个 EvaluatorDebug 类,可生成一个 sexpr 来表示查询,从而使查询解析测试更简单、更彻底。2073

  • XML CData output:从解析的 HTML 生成 XML 语法输出时,包含(伪)CData 部分的脚本节点将添加无关的 CData 部分,从而导致脚本执行错误。现在,
    如果数据尚未位于 CData 部分中,则数据内容将以 HTML/XML/XHTML 多语言格式发出。2078

  • Thread safety::hasevaluator 持有一个非线程安全的迭代器,因此如果多个并发线程共享一个 Evaluator object,可能会抛出 NoSuchElement 异常,并且选择的结果可能不正确。现在,迭代器对象是线程本地的。2088

标签: 线程 属性

提交需求或反馈

Demand feedback