翻译了下..没有元宵的淫文啊....所以用PinYing吧...
这几天写了一个爬虫可以做定向爬虫.也可以做全网爬虫.
该考虑的部分考虑了..不该考虑的没考虑
这里是个程序运行的大概UML不怎么会画凑合看吧
支持
正则过滤网址 支持抽取模板
这个项目比起nutch不具有可比性...如果你非要当个demo来看我也不喊冤呵呵...
里面的url抽取..正文抽取...都是自己写的
用到了一些java(据说高级)的东西..可惜仅仅是用到...比如curren nio
周六日费了两天电..目前采集没出大问题(中途断网一次).
如果非要说特点.那就是作者造轮子吧..基于原生java api 写的..不用导包..连log4j 都没要..当然我也没做log...
不是我喜欢造轮子..是不太会用轮子..比如htmlpaser 我怎么看它抽取的正文都不是我想要的东西...js css 都属于正文...而且还得导入个巨大的jar ...这不是我想要的...
数据有了.下一步把cq分词完善下..然后自己写个垃圾索引...一告慰我四年的无为java生涯
使用方法如下
1.首先将项目导入到eclipse
2.在D:/data/url.txt 存放你的
种子网页
3.主类在 ansj.sun.spider.
thread.Scheduler在这里运行就可以了
配置文件:regexFilter.txt 这个是对需要采集网址的正则过滤
d:/data/wrapper 里面存放用户的
自定义抽取模板
抽取模板的
例子如下
命名规则必须是news-*.xml
<?xml version="1.0" encoding="UTF-8"?>
<configure>
<listUrlRegex>
http://roll.mil.news.sina.com.cn/col/zgjq/index_\d+.shtml
</listUrlRegex>
<urlBlock>
<![CDATA[
<div class="fixList">ANSJTEXT</div>
]]>
</urlBlock>
<nextPage>
<![CDATA[
<a title="下一页"ANSJTEXT下一页
]]>
</nextPage>
<urlRegex>http://mil.news.sina.com.cn/(p/)?+\d{4}-\d{2}-\d{2}/\d+(_?+)\d+.html</urlRegex>
<title>
<![CDATA[
<h1 id="artibodyTitle">ANSJTEXT</h1>
]]>
</title>
<content>
<![CDATA[
<!-- publish_helper name='原始正文' p_id='\d+' t_id='\d+' d_id='\d+' f_id='\d+' -->ANSJTEXT<style type="text/css">
]]>
</content>
<publishTime>
<![CDATA[
<span id="pub_date">ANSJTEXT</span>
]]>
</publishTime>
<author>
<![CDATA[
<span id="media_name">ANSJTEXT</span>
]]>
</author>
</configure>
- Spider.rar (206.1 KB)
- 下载次数: 174
- 大小: 20.9 KB