java jsoup实例_jsoup入门示例程序

本文介绍了一个使用Java库jsoup从指定URL抓取并解析HTML,特别是从www.javacui.com博客首页提取文章标题的示例程序。通过DOM和CSS选择器,程序能有效地定位到文章列表,并打印出每篇文章的标题。
摘要由CSDN通过智能技术生成

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

jsoup的主要功能如下:

1. 从一个URL,文件或字符串中解析HTML;

2. 使用DOM或CSS选择器来查找、取出数据;

3. 可操作HTML元素、属性、文本;

jsoup是基于MIT协议发布的,可放心使用于商业项目。

解析XML和解析JSON大家都已经在程序中使用很多了,解析HTML也是一个意思,就是用法不同而已。

这里实用jsoup来解析我自己的博客,抓取博客首页的标题列表并打印,该程序为入门示例程序。

1734495add572df1f67777cb7aa26552.png

如图,如果访问www.javacui.com网站,查看源码,会看到如上内容。

分析一下,ID为left的DIV里面就是文章列表,列表以dl进行划分,其中标题位于dl-dt-h2-a标签内。根据以上分析,编写如下代码。package com.cui.test;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.select.Elements;

/**

* 获取www.javacui.com网站的文章列表

* @author java小强

*/

public class JavacuiSpider {

public static void main(String[] args) {

try {

Document doc = null;

doc = Jsoup.connect("http://www.javacui.com/").get(); // 直接发送HTTP请求获得

Element content = doc.getElementById("left"); // 根据ID获得文章列表DIV

Elements elements = content.getElementsByTag("dl"); // DIV中每个dl都是一篇文章

int i = 1; // 用于显示第几篇文章

for (Element e : elements) {

Elements as = e.getElementsByAttribute("target"); // 根据属性获取,一遍文章中有两个a,都有target属性,第一个是标题连接,第二个是点击详细

Element a = as.get(0); // 获取第一个,既标题连接

String title = a.text(); // 问的标签内的文本

System.out.println("第【" + i + "】篇文章标题:" + title);

i++;

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

程序会像爬虫一样读取博客源码,然后解析出文章标题并打印。

请用maven引用jsoup的jar包

org.jsoup

jsoup

1.7.2

结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值