import com.google.common.collect.Lists; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.util.Date; import java.util.List; /** * 网上爬取快递100的快递公司名称和公司编码 工具类 */ public class ExpressCodeUtil { public static void main(String[] args) { String url = "https://my.oschina.net/u/3291736/blog/843843"; try { Document doc = Jsoup.connect(url).get(); //获取第一个表格 Element element = doc.select("table").first(); Elements els = element.select("tr");//一个tr是一个快递公司编码 List<ExpressCodeTbl> list = Lists.newArrayList();//ExpressCodeTbl是用来装快递公司名称和公司编码的实体类 for (int i = 0; i< els.size();i++) { ExpressCodeTbl code = new ExpressCodeTbl(); if (i != 0) { //每个快递编码处理 Elements ele = els.get(i).select("td"); code.setExpressName(ele.get(0).toString().replaceAll("<td>", "").replaceAll("</td>", "")); code.setExpressCode(ele.get(1).toString().replaceAll("<td>", "").replaceAll("</td>", "")); code.setAddTime(new Date()); list.add(code); } } //保存数据到数据库 //ex.saveAll(list); for (ExpressCodeTbl code:list){ //输出快递公司名称和编码 System.out.println(code); } } catch (Exception e) { e.printStackTrace(); } } }