Java HTML 解析器 jsoup 发布 1.13.1,解析速度显著提升
时间:2020-03-03 10:35 来源:未知 作者:IT
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
(责任编辑:IT)
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 值得关注的改进
详细更新内容查看 https://jsoup.org/news/release-1.13.1 |