Java HTML 解析器 jsoup 发布 1.13.1,解析速度显著提升

栏目: 软件资讯 · 发布时间: 5年前

内容简介:jsoup 1.13.1 已发布,值得关注的改进包括:解析速度较 1.12.x 有了显著提升、选择器增加新特性、修复 Mark Invalid 出现异常的问题,以及许多其他的改进。 jsoup 是最好的 Java HTML 解析器(红薯认证),它使用...

jsoup 1.13.1 已发布,值得关注的改进包括:解析速度较 1.12.x 有了显著提升、选择器增加新特性、修复 Mark Invalid 出现异常的问题,以及许多其他的改进。

jsoup 是最好的 Java HTML 解析器(红薯认证),它使用最好的 HTML5 DOM 方法和 CSS 选择器,为提取和处理数据提供了非常方便的 API。感受一下代码:

Document doc = Jsoup.connect("https://en.wikipedia.org/").get();
log(doc.title());
Elements newsHeadlines = doc.select("#mp-itn b a");
for (Element headline : newsHeadlines) {
  log("%s\n\t%s", 
    headline.attr("title"), headline.absUrl("href"));
}

上面这段代码先是抓取了维基百科的主页,将其解析为 DOM,然后选中“In the news”版块的标题并将其填充至使用 Elements 类初始化的 headline 对象中。(在线示例完整代码

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

<dependency>
  <!-- jsoup HTML parser library @ https://jsoup.org/ -->
  <groupId>org.jsoup</groupId>
  <artifactId>jsoup</artifactId>
  <version>1.13.1</version>
</dependency>

1.13.1 值得关注的改进

  • 新增Element.closest()方法,它会对树进行搜索,以找到与选择器匹配的最相近元素
  • 优化内存,将Document的常驻内存减少了约 39%,分配到的内存减少了约 9%
    1.仅当元素具有属性时,才会在Element中创建Attributesholder
    2.仅当通过 DOM 将给定树的baseUri设置为新值时,才跟踪该元素中的baseUri
    3.完成解析后,不会在Document.parser中保留输入字符读取器( 和相关的缓冲区)
  • 与 1.12.x 相比,解析速度有了实质性的改进
  • 移除旧版本中被标记为不推荐使用的旧方法和类
  • 增加Element.select(Evaluator)和 Element.selectFirst(Evaluator)方法,允许在多次使用同一评估器的情况下重用已解析的 CSS 选择器

详细更新内容查看 https://jsoup.org/news/release-1.13.1


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python Algorithms

Python Algorithms

Magnus Lie Hetland / Apress / 2010-11-24 / USD 49.99

Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it......一起来看看 《Python Algorithms》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具