Jsoup网页数据解析技术
import java.io.IOException;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.jsoup.Jsoup;
public class JsoupUtil {
/**
* @param args
*/
public static void main(String[] args) {
//初始化docment对象
Document doc=null;
String string="";
//初始化数据库id编号开始索引
int i=46258;
//(以福建省为例) 获取福建省下的各城市
String[] city={"1278","1293","1302","1308","1322","1335","1348","1360","1369"};
//(以福建省为例) 获取网页中每个城市下容纳初中的页面数
String[] page={"25","6","10","14","24","16","13","17","14"};
try {
for(int j=1;j<=city.length;j++)
{
for(int z=1;z<page.length;z++)
{
//定义docment对象(以福建省下的各初中为例)
doc=Jsoup.connect("http://school.21cnjy.com/index.php/Index/chuzhong/id/13/cid/"+city[j-1]+"&p="+page[z]).timeout(360000).get();
//筛选元素
Elements eles=doc.select("h3>a");
//进行遍历
for(Element el:eles)
{
//数据库中福建省下的第一个市id为445,所有以445开始,初中所在城市id递增
int s=445+j-1;
String str=s+"";
//获取元素中的text文本
string=el.text();
//将数据打印在控制台,再复制进text文本,导入数据库
System.out.println(i+" "+string+" "+str);
i++;
}
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
输出