使用jsoup解析html的table中的文本信息

时间:2022-06-21 08:00:01

  jsoup是一个非常好用的html解析工具。使用时需要下载相应的jar包。下面就是我使用jsoup解析html的表格的java源代码。亲测可用使用jsoup解析html的table中的文本信息

public void parse(){
String htmlStr = "<table id=kbtable >"
+ "<tr> "
+ "<td width=123>"
+ "<div id=12>这里是要获取的数据1</div>"
+ "<div id=13>这里是要获取的数据2</div>"
+ "</td>"
+ "<td width=123>"
+ "<div id=12>这里是要获取的数据3</div>"
+ "<div id=13>这里是要获取的数据4</div>"
+ "</td>"
+ "</tr>"
+ "</table>";
Document doc = Jsoup.parse(htmlStr);
// 根据id获取table
Element table = doc.getElementById("kbtable");
// 使用选择器选择该table内所有的<tr> <tr/>
Elements trs = table.select("tr");
//遍历该表格内的所有的<tr> <tr/>
for (int i = 0; i < trs.size(); ++i) {
// 获取一个tr
Element tr = trs.get(i);
// 获取该行的所有td节点
Elements tds = tr.select("td");
// 选择某一个td节点
for (int j = 0; j < tds.size(); ++j) {
Element td = tds.get(j);
// 获取td节点的所有div
Elements divs = td.select("div");
// 选择一个div
for (int k = 0; k < divs.size(); k++) {
Element div = divs.get(k);
//获取文本信息
String text = div.text();
//输出到控制台
System.out.println(text);
}
}
}
}