一、简介

Jsoup是一款HTML解析器,可以直接解析url地址,也可以解析html文本内容。也可通过DOM、CSS以及类似于jQuery的操作方法来取出和操作数据。其主要功能:

1、从url、字符串或者文本中解析出html

2、查找、取出数据

3、操作html元素、属性、文本。

Jsoup直接继承Object类,声明为:public class Jsoup extends Object

这是使用Jsoup库的核心的公共的入口。

二、方法详细

1、public static Document parse(String html, String baseUri)  将html解析到Document中,这里能为任何html创建一个document文档树。

其中的baseUri,html中url经常表示成相对路劲形式,baseUri就是用来指定其根路劲,在解析html中url从相对路劲中转换为绝对路劲时非常重要。

2、public static Document parse(String html, String baseUri, Parser parser) 使用指定的解析器对html字符串进行解析。

3、public static Document parse(String html) 将html字符串解析到Document中,这里没有指定baseUri,其依赖于html中<base href>标签。

4、public static Connection connect(String url)   创建一个指定url的链接(Connection)对象,常用来获取或解析html页面。

如:Document doc = Jsoup.connect("http://example.com").userAgent("Mozilla").data("name", "jsoup").get();

   Document doc = Jsoup.connect("http://example.com").cookie("auth", "token").post();

5、public static Document parse(File in, String charsetName, String baseUri) throws IOException  解析html文件

charsetName指编码,通常设置为UTF-8比较安全。当文件找不到或者不可读或者编码无效时将会跑IO异常。

6、public static Document parse(File in, String charsetName) throws IOException  解析html文件 文件位置常用来作为baseUri。 其他跟上面第5点一样。

7、public static Document parse(InputStream in, String charsetName, String baseUri) throws IOException  读取输入流,然后将其解析为Document对象。

8、public static Document parse(InputStream in, String charsetName, String baseUri, Parser parser) throws IOException  读取输入流,使用指定解析器对其进行解析。

9、public static Document parseBodyFragment(String bodyHtml, String baseUri)  解析只含body部分的html片段。 指定了baseUri

10、public static Document parseBodyFragment(String bodyHtml) 解析只含body部分的html片段。 未指定baseUri

11、public static Document parse(URL url, int timeoutMillis) throws IOException 将url指定的html解析为document。考虑兼容性常用connect(String url)代替。

如果响应返回码不是200或者读取响应流出错将抛出IO异常。

12、public static String clean(String bodyHtml, String baseUri, Whitelist whitelist)  使用白名单标签和属性对输入的不信任的html进行过滤来得到安全的html。指定了baseUri

13、public static String clean(String bodyHtml, Whitelist whitelist)   使用白名单标签和属性对输入的不信任的html进行过滤来得到安全的html。未指定baseUri

14、public static boolean isValid(String bodyHtml, Whitelist whitelist)   测试输入的html是否只包含白名单允许的标签和属性。

Jsoup类的更多相关文章

  1. jsoup

    jsoup 相关知识链接:http://blog.csdn.net/column/details/jsoup.htm http://www.jb51.net/article/43485.htm htt ...

  2. Jsoup代码解读之一-概述

    Jsoup代码解读之一-概述 今天看到一个用python写的抽取正文的东东,美滋滋的用Java实现了一番,放到了webmagic里,然后发现Jsoup里已经有了…觉得自己各种不靠谱啊!算了,静下心来学 ...

  3. Java上的jQuery?解析HTML利器—Jsoup

    也许大家有过在java运行平台上解析html的经历,通常的方式是将HTML以XML的形式进行结点解析,调用java本身的xml解析类库.这样的方式很容易理解并且很方便,但习惯用jQuery的各位是否在 ...

  4. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  5. Android_HTML解析器_jsoup

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

  6. jsoup的elements类

    jsoup的Elements类 一.简介 该类是位于select包下,直接继承自Object,所有实现的接口有Cloneable, Iterable<Element>, Collectio ...

  7. Jsoup解析网页源码时常用的Element(s)类

    Jsoup解析网页源码时常用的Element(s)类 一.简介 该类是Node的直接子类,同样实现了可克隆接口.类声明:public class Element extends Node 它表示由一个 ...

  8. Jsoup请求http或https返回json字符串工具类

    Jsoup请求http或https返回json字符串工具类 所需要的jar包如下: jsoup-1.8.1.jar 依赖jar包如下: httpclient-4.5.4.jar; httpclient ...

  9. jsoup的Document类

    一.简介 Document是一个装载html的文档类,它是jsoup一个非常重要的类.类声明:public class Document extends Element .Document是Node间 ...

随机推荐

  1. python 分析文本文件

    def count_words(filename):#统计指定文件单词的数量 """Count the approximate number of words in a ...

  2. 从sql2008导入表结构及数据到mysql

    打开navicat for mysql连接mysqlcreate database lianxi刷新,双击lianxi,双击"表"点击右边的"导入向导"选择&q ...

  3. 8Java设计模式(持续更新)

    1.单例模式(Singleton pattern): 单例模式的实现方式是,一个类能返回对象的一个引用(永远是同一个)和一个获得该唯一实例的方法(必须是静态方法). 饿汉式: public class ...

  4. 简单快速安装Apache+PHP+MySql服务环境(四)—— 将php版本升级到7.2

    书接上文,简单快速安装Apache+PHP+MySql服务环境(二)-- centos使用yum安装指定版本的php. 随着各种PHP框架的升级,对PHP的版本也有了更高的要求,所以笔者也尝试着更新升 ...

  5. 数据库-SQL 语法

    数据库-SQL 语法 二十余年如一梦,此身虽在堪惊. 简介:数据库-SQL 语法 一.基础 模式定义了数据如何存储.存储什么样的数据以及数据如何分解等信息,数据库和表都有模式. 主键的值不允许修改,也 ...

  6. GhostScript 沙箱绕过(命令执行)漏洞(CVE-2018-19475)

    影响范围 Ghostscript 9.24之前版本 将POC作为图片上传,执行命令,抓包 POST /index.php HTTP/1.1 Host: target Accept-Encoding: ...

  7. Spring Cloud分区发布实践(4) FeignClient

    上面看到直接通过网关访问微服务是可以实现按区域调用的, 那么微服务之间调用是否也能按区域划分哪? 下面我们使用FeignClient来调用微服务, 就可以配合LoadBalancer实现按区域调用. ...

  8. 【前端 · 面试 】HTTP 总结(十)—— HTTP 缓存应用

    最近我在做前端面试题总结系列,感兴趣的朋友可以添加关注,欢迎指正.交流. 争取每个知识点能够多总结一些,至少要做到在面试时,针对每个知识点都可以侃起来,不至于哑火. 前言 通过前面几篇内容的学习,我们 ...

  9. 面试官:你的App卡顿过吗?你是如何监控的?

    一.故事开始 面试官:平时开发中有遇到卡顿问题吗?你一般是如何监控的? 来面试的小伙:额...没有遇到过卡顿问题,我平时写的代码质量比较高,不会出现卡顿. 面试官:... 这回答似乎没啥问题,但是如果 ...

  10. 干了8年Android开发熬到年薪40万,突然接到被辞退消息,应该怎么办?

    01 36岁Android开发,为公司工作8年,昨天HR说公司不准备续约 前天晚上,有个读者给我留言,讲述了他自己比较气愤的一件事,感觉自己委屈又不值. 这位朋友不愿意透露姓名,就叫他H先生吧. H先 ...