有时我们获取到了页面需要在Java代码中进行解析,获取html中的数据,Jsoup是一个很方便的工具。

一、什么是Jsoup?

官网网站:http://jsoup.org/

可在官网下载对应的jar

通俗的将Jsoup就是一个解析网页的东西

二、示例

1、页面,通过查询获取到了一些数据:

2、源码,这是一个table,class="list",通过这些来唯一标识它

3、代码,将html以String的形式传进来,使用Jsoup进行解析:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public calss MyTest {
	public static void demo1(String htmltest) {
  	String html = htmltest;
  	Document doc = Jsoup.parse(html);
  	Elements rows = doc.select("table[class=list]").get(0).select("tr");
  	if (rows.size() == 1) {
   		System.out.println("没有结果");
  	}else {
   		System.out.println("--------------------------- 查询结果 ---------------------------");
   		Element row = rows.get(1);
   	 	System.out.println("暂存单号:" + row.select("td").get(0).text());
   		System.out.println("投保单号:" + row.select("td").get(1).text());
   		System.out.println("保单号:" + row.select("td").get(2).text());
   		System.out.println("投保人:" + row.select("td").get(3).text());
   		System.out.println("被保险人:" + row.select("td").get(4).text());
   		System.out.println("号牌号码:" + row.select("td").get(5).text());
   		System.out.println("车架号:" + row.select("td").get(6).text());
   		System.out.println("录单人:" + row.select("td").get(7).text());
   		System.out.println("投保日期:" + row.select("td").get(8).text());
   		System.out.println("暂存单状态:" + row.select("td").get(9).text());
   		System.out.println("状态:" + row.select("td").get(10).text());
   		System.out.println("-----------------------------------------------------------------");
  	}

 	}
}

4、输出结果:

更多的使用方法可以去详细阅读Jsoup的API

posted on 2021-02-02 21:04  在下程序猿  阅读(1300)  评论(0编辑  收藏  举报