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();
}
}
}