这篇文章主要介绍了Jsoup如何解析一个HTML文档、从文件加载文档、从URL加载Document等方法,对Jsoup常用方法做了详细讲解,最近提供了一个示例供大家参考 使用DOM方法来遍历一个文档 从元素抽取属性,文本和HTML 获取所有链接
解析和遍历一个HTML文档
如何解析一个HTML文档:
String html = "
+ "
Parsed HTML into a doc.
";Document doc = Jsoup.parse(html);
其解析器能够尽最大可能从你提供的HTML文档来创见一个干净的解析结果,无论HTML的格式是否完整。比如它可以处理:
1、没有关闭的标签 (比如:
Lorem
Ipsum parses to
Lorem
Ipsum
)2、隐式标签 (比如. 它可以自动将
?) 3、创建可靠的文档结构(html标签包含head 和 body,在head只出现恰当的元素) 一个文档的对象模型 1、文档由多个Elements和TextNodes组成 (以及其它辅助nodes). 从一个URL加载一个Document 存在问题 解决方法 复制代码 代码如下: Document doc = Jsoup.connect("https://www.0133.cn/").get(); String title = doc.title(); 说明 Connection 接口还提供一个方法链来解决特殊请求,具体如下: 复制代码 代码如下: Document doc = Jsoup.connect("https://www.0133.cn") .data("query", "Java") .userAgent("Mozilla") .cookie("auth", "token") .timeout(3000) .post(); 这个方法只支持Web URLs (http和https 协议); 假如你需要从一个文件加载,可以使用parse(File in, String charsetName) 代替。 从一个文件加载一个文档 问题 办法 复制代码 代码如下: File input = new File("/tmp/input.html"); Document doc = Jsoup.parse(input, "UTF-8", "https://www.0133.cn/"); 说明
问题 方法 复制代码 代码如下: File input = new File("/tmp/input.html"); Document doc = Jsoup.parse(input, "UTF-8", "https://www.0133.cn/"); Element content = doc.getElementById("content"); |