`
hwy1782
  • 浏览: 153355 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

jsoup使用

 
阅读更多

jsoup是一个开源的html解析工具:

 

jsoup的对象模型由多个elements 和tetxNode组成。

 

其继承结构如下:

                       Node

                            |

           -----------------------

           |                             |

     Element               TextNode

           |

   Document

 

其中一个Element包含一个子节点集合,并拥有一个父element

 

分以下几个部分描述一下这个工具的用法:

1.获取远程HTML document

2.解析document

 

1.获取HTML document

 

基本方法:

 

//获取参数URL对应的HTML文档,第二个参数为超时时间。
public static Document parse(URL url, int timeoutMillis)

 

Jsoup还提供了一个方法链来解决特殊请求,具体如下:

Document doc = Jsoup.connect("http://example.com")
  .data("query", "Java")
  .userAgent("Mozilla")
  .cookie("auth", "token")
  .timeout(3000)
  .post();

 

 

通过上述方法获取到HTML Document.,然后我们就可以通过Document中适当的方法或者它父类Elment和Node的方法来获取HTML文档中的相关数据

 

2.解析获取到的document

 

将HTML解析成Docuemnt之后,就可以使用类似DOM的方法来操作。

 

先给一个简单的例子:

//获取百度新歌100中的数据
private static void analyesBaidu() {
		
		String urlStr = "http://music.baidu.com/";
		
		try {
			URL urlBase = new URL(urlStr);
			Document doc = Jsoup.parse(urlBase, 10000);
			String topMsic = doc.select("div[monkey=new-top]").text();
			System.out.println(topMsic);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

返回的结果如下:

写道
更多>> 新歌TOP100 1 到不了 李代沫 2 经过 刘若英 3 等你爱我 金池 4 平安夜 平安 5 How You .. Avril La.. 6 伤痕 金池 7 遗憾 李代沫 8 愤怒的老鸟 多亮 9 Dancing Q.. 少女时代 10 Super Girl .. 萧亚轩 播放榜单

 

解释一下上述代码。

通过Jsoup拿到HTML对应的Document对象,使用jsoup的select方法。获取对应的内容。

其中

//查找docuemtn中div标签下有monkey=“new-top”属性的元素
String topMsic = doc.select("div[monkey=new-top]").text();

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    itextpdf测试样例和jar jsoup使用说明

    以下是一个简单的Jsoup使用示例,用于获取网页的标题: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class JsoupExample { public static void main(String[] args) throws ...

    Jsoup解析与使用

    **Jsoup解析与使用** Jsoup是一款非常实用的Java库,专为网页抓取和解析而设计。它提供了丰富的API,使得开发者可以方便地提取结构化数据,类似于浏览器执行JavaScript的方式,但更专注于HTML文档的处理。Jsoup的...

    jsoup操作手册 API

    无论是从字符串、URL还是本地文件中加载HTML,还是使用DOM或CSS选择器提取数据,jsoup都能提供简洁、高效的解决方案。对于任何需要解析和操作HTML的Java项目而言,jsoup都是一个不可或缺的强大助手。

    jsoup-jar包

    JSoup使用DOM解析器将HTML内容转换为一个可操作的`Document`对象。这个对象遵循W3C DOM规范,允许我们像操作XML一样操作HTML。你可以通过CSS选择器选择元素,就像在jQuery中那样: ```java Elements links = doc....

    jsoup 1.9.2

    在实际项目中,开发者通常会将 `jsoup-1.9.2.jar` 添加到项目的类路径中,然后就可以通过导入 `org.jsoup.*` 包来使用 jsoup 的功能。如果遇到任何问题,官方文档、社区支持以及 `说明.txt` 文件都是很好的参考资料...

    jsoup1.10.3完整jar包+中文文档

    jsoup使用了基于CSS选择器的API,这使得选取HTML元素变得相当直观。你可以通过类名、ID、属性等来定位元素,例如: ```java Document doc = Jsoup.connect("http://example.com").get(); Element header = doc....

    jsoup实现网络爬虫

    1. **连接与解析**:JSoup使用`Jsoup.connect()`方法建立HTTP连接,并通过`get()`或`post()`方法发送请求。之后,调用`parse()`方法解析返回的HTML文档。 ```java Document doc = Jsoup.connect(...

    jsoup api 文档和教程文档

    - 练习编写简单的爬虫,使用 JSoup 解析和提取数据。 - 结合 CSS 选择器进行元素定位,提高对 HTML 结构的理解。 - 实践修改 HTML 元素,体验如何动态构建或更新页面内容。 总之,JSoup 是一个强大且易用的工具,...

    jsoup爬虫demo

    - **解析速度快**:jsoup使用高效的CSS选择器引擎,能快速定位网页元素。 - **HTML容错性**:jsoup能够处理不规范的HTML,使解析过程更加稳定。 - **安全的链接提取**:提供`absUrl()`方法确保提取的链接是绝对路径...

    使用jsoup需要的jar.zip

    jsoup使用时记得导入jar,否则会报错.jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。主要功能 1....

    Jsoup 1.6.2 API

    在使用Jsoup时,应适当地捕获和处理这些异常。 通过阅读`jsoup-1.6.2-javadoc`中的文档,开发者可以深入理解每个类、方法和接口的具体用法,从而充分利用Jsoup的功能,进行高效的HTML处理和解析。无论是爬虫项目...

    Jsoup中文API

    `Document` 是 Jsoup 的核心对象,可以使用 DOM 遍历方法(如 `childNodes()`, `select()`, `getElementById()` 等)来访问和遍历其内部的元素和文本节点。 2. 解析一个 HTML 字符串: 如果 HTML 字符串来自用户...

    java html解析 工具jsoup和一个简单例子

    以下是一个简单的Jsoup使用示例,演示如何获取和打印网页的标题: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class JsoupExample { public static void main(String[] args) ...

    jsoup 解析html

    - **DOM解析**:JSoup使用DOM解析方式,将HTML文档转化为一个可操作的Element树形结构。这种解析方式允许开发者通过CSS选择器或DOM遍历方法来查找、修改和删除HTML元素。 - **连接与下载**:JSoup不仅用于解析本地...

    jsoup源码与文档

    以下是一个简单的jsoup使用示例,展示如何解析HTML并提取标题: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class JsoupExample { public static void main(String[] args) ...

    HTML解析器 jsoup资料

    - jsoup使用DOM解析器来构建HTML文档的树形结构,允许开发者通过CSS选择器轻松访问元素。 - 它支持HTML5和一些常见的错误容忍,这意味着即使在处理不规范的HTML时,jsoup也能正常工作。 - 解析过程包括了解析HTML...

    jsoup Java HTML解析器

    以下是一个简单的jsoup使用示例,展示如何解析HTML并提取页面标题: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class JsoupExample { public static void main(String[] args) ...

    Jsoup Cookbook(中文版)

    #### 三、Jsoup 的使用案例 ##### 3.1 解析 HTML 字符串 **问题**:当需要解析来自用户输入、文件或网站的 HTML 字符串时,可以通过 Jsoup 来获取其内容、验证格式或修改内容。 **解决方法**: ```java String ...

    jsoup-1.15.3.jar

    jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jar,jsoup-1.15.3.jarjsoup-...

    使用jsoup获取网页内容并修改

    **使用Jsoup获取网页内容并修改** Jsoup是一款强大的Java库,它允许开发者方便地解析、操作和提取HTML内容。在Android开发中,Jsoup常用于网页数据抓取和页面内容的处理。以下将详细解释如何使用Jsoup来实现这个...

Global site tag (gtag.js) - Google Analytics