读书人

数据抓取-学习札记1

发布时间: 2012-11-03 10:57:43 作者: rapoo

数据抓取--学习笔记1

近期对数据的抓取相关知识进行了学习,有点浅,有点散,简单总结一下,以便日后的深入学习:
?
1、框架:spring ,ibatis
?由于前期完成的是抓取数据,实现目标网站的数据入库,暂未对数据展示做相关设计,所以框架暂用spring,和ibatis。
?spring:日后可和struts集成,也可使用其自身的MVC进行数据展示。
?ibatis:由于抓取到的数据势必会涉及到相关的数据统计,所以选择sql语句相对灵活处理的ibatis。
2、抓取html内容:UrlConnection or HttpURLConnection
?2.1 使用固定代理或不使用代理的情况--代码: ?

?

//do something
} else if(……){
//解析出其他的标签
}

?
??这样就可以在抓取html的时候解析出自己需要的特定标签。
??
?4.2 使用 Filter 解析内容
?Parser parser = new Parser(url);
?NodeFilter filter = new TagNameFilter (\"TABLE\");
?NodeList nodes = parser.extractAllNodesThatMatch(filter);
?再通过 遍历node获得想要的内容
?
?4.3 类似 4.1,NodeVistor
?这里是用 NodeVistor? ,不做父类,而是以内部类的方式使用,在网上也有很多这样的例子:
????

?5、在抓取的过程中,能一次抓取过来的数据别分成两次抓取,抓取数据一次还是比较浪费时间的,如果对方服务器较慢,这个浪费会更加明显。
?
? 下次继续~

1 楼 jy00105276 2010-05-11 抓取的时候 最好能down下目标页面来,或者把html保存下来,不然任何逻辑的改动又需要网络连接一次,时间主要消耗就是在网络。 2 楼 cxr1217 2010-05-11 jy00105276 写道抓取的时候 最好能down下目标页面来,或者把html保存下来,不然任何逻辑的改动又需要网络连接一次,时间主要消耗就是在网络。
恩,的确。也可以在抓取后进行相关的数据逻辑操作入库,这样比较好些,来回进行io操作还是很浪费时间和空间的。

读书人网 >其他相关

热点推荐