Document:返回HTML
Element:标签
Elements:标签的集合
具体实例加爬虫技术解析:
new Thread(){
//若是Java,放在main方法里;若是Android,放在oncreate方法里(可以放在button的点击事件里去触发)
@Override
public void run() {
super.run();
try {
int k;
for (k = 0; k < 5; k++) {
Document doc = Jsoup.connect("http://www.budejie.com/" + k).get();//获取5页网页,根据经验在网页后加1、2、3进行分页(也可不加)
Elements els = doc.select("div.j-r-list-c-desc");//主界面源代码,选择div的唯一标识
Elements name1 = doc.select("div.j-list-user");//根据所爬取的不同内容,选择不同的div标识
int i;
for (i = 0; i < els.size(); i++) {
//div标识有多个,一个一个来显示
Elements elements = els.get(i).select("a");//第一个标识的a标签
Elements name2 = name1.get(i).select("a");
String a = elements.attr("href");//第一个标识a标签所对应的href,可唯一标识网页
String name3 = elements.attr("href");
Document name_doc = Jsoup.connect("http://www.budejie.com"+name3).get();//获取特定的网页(所要找的元素对应的网页)
Elements name_result = name_doc.select("div.u-txt").select("a");//获取特定div标签下的a标签
System.out.println("用户名:"+name_result.text());//输出爬取的内容
Document document = Jsoup.connect("http://www.budejie.com"+a).get();
Elements result1 = document.select("div.j-r-list-c-desc");
System.out.println("内容:"+result1.text());
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}.start();