[Jsoup] HTML解析器,轻松获取网页内容

boyanx3个月前技术教程14

Jsoup简介

jsoup 是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。





官网地址:
http://jsoup.org/


在官网中下载 jsou-1.8.3.jar 文件,添加到自己项目的lib库中,便可使用Jsoup提供的api,官网中也提供了一套使用指南(Cookbook),便于开发者借鉴。
Jsoup解析HTML得到一个Document对象,通过操作Document的属性来获取HTML页面内容,所以,在开始之前,先介绍一下XML中Node、Element、Document等这些相关概念的区别,防止因概念混淆而导致乱用错用。

相关概念

  • Jsoup中的继承关系

    public abstract class Node implements Cloneable
    public class Element extends Node
    public class Document extends Element

    从Jsoup源码对三者的定义可以看出如下一个树形继承关系:

  1. Node(节点)
    从上述继承关系上可以明确一点,文档中的所有内容都可以看做是一个节点。节点有很多种类型:属性节点(Attribute)、注释节点(Note)、文本节点(Text)、元素节点(Element)等,通常所说的节点是这些多种节点的统称。

  2. Element(元素)
    相比节点而言,元素则是一个更小范围的定义。元素继承于节点,是节点的子集,所以一个元素也是一个节点,节点拥有的公有属性和方法在元素中也能使用。

  3. Document(文档)
    文档继承于元素,指整个HTML文档的源码内容,通过 System.out.println(document.toString()); 即可在控制台打印出网页源码内容。

  4. 相互转换
    基于Node、Element和Document之间的“缠绵”关系,可以利用各个类中提供的方法适当转换获取所需对象,以供使用。

    使用案例

    Jsoup解析Html获取Document对象的方式分为三类:在线Url、Html文本字符串、文件,对应API如下

标签: jquery手册

相关文章

7.2k star!一款无比优雅的文档管理系统,免费开源!

说到文档管理,很多团队的文档管理都是一团糟,每个员工在自己本地写了各种 Word 文档、Excel 表格、甚至还有手写的便签,到处都是,找起来就像大海捞针。有些聪明的团队开始用飞书来管理团队文档,但是...

8个免费自学网站,值得收藏

1.智慧教育(国家出品全年龄自学网站)国家教育部开发的线上智慧教育平台,适合从小学到大学到就业各年龄段爱自学的人,主要有三大类:中小学智慧教育一年级到高中三年级自学视频课程,,跟教材完全同步,还能免费...

建站的技术篇(干货分享)

建站的技术篇(干货分享)很多朋友自己不会技术方面的所以在站内优化方面有点问题,自己会建站的话就没有这方面的困扰了,自己在工作中也能顺手,自己能解决的事情绝对不求人!当然只是掌握基础部分就好了,开发那...

2015年用户界面工具干货资源精选

圣诞福利干货大放送~精选2015年度用户界面工具干货资源,有更新说明文档、帮助文档下载、视频教程、在线示例、中文教程、免费工具盘点,满满的干货等你来拿走!| 更多干货资源请移步用户界面专题|DevEx...

所有jQuery实现动画的方法的总结

有和同行的朋友和同事经常问实现jQuery动画的一些方法,总是喜欢去翻书或者网上找百度手册,在这里,我总结一下,把所有动画方法一一列举出来:1、基本动画方法:hide(),show(),fadeIn(...

你说的H5跟我说的H5不是一回事

先科普一下,HTML5并不是一项技术,而是一个标准。标准的意思就是:学生准则手册。你可以按照准则做,甚至可以超出准则更加严格的要求自己,也可以不按照准则来,但是会被老师训斥,被小伙伴讨厌,别人都不找你...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。