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


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

查看所有标签

猜你喜欢:

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

APP蓝图

APP蓝图

吕皓月 / 清华大学出版社 / 2015-1-1 / 69.00

移动互联网原型设计,简单来说,就是使用建模软件制作基于手机或者平板电脑的App,HTML 5网站的高保真原型。在7.0 之前的版本中,使用Axure RP进行移动互联网的建模也是可以的。比如,对于桌面的网站模型,制作一个1024像素宽度的页面就可以了;现在针对移动设备,制作320像素宽度的页面就好了。但是在新版本的Axure RP 7.0 中,加入了大量对于移动互联网的支持,如手指滑动,拖动,横屏......一起来看看 《APP蓝图》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

MD5 加密
MD5 加密

MD5 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试