网络爬虫开发

最近的一个项目,基于lucene3.0的全文检索和网络爬虫引擎,主要用来应付企业内部页面爬取和检索。

本来爬虫引擎打算在别人的基础上开发订制,例如compass等。后来还是觉得别人的东西不好用,核心不容易理解。考虑到以后还要做为公司的产品,于是下了决心,历时2个半月,自主开发了一套爬虫引擎。项目取名为Jspider,没有什么特殊含义,最近好像一些项目特别流行以植物、动物命名,下个版本换个好听点的名字,呵呵。

说说构架吧,Jspider是基于jdk1.5的一套多线程、多节点的Application,支持多点布署,可形成一个分布式的高性能网络爬虫系统,迅速完成多个站点的攫取工作。使用mysql作为爬虫数据存取工具。WEB版的管理后台。前后台网络通讯采用了apache的mina2.0。http通信使用了httpClient4.1。
经过一个月的测试和优化修改,服务器稳定性还是比较高的,没出现过崩溃,内存溢出等状况。任务完成自动释放内存,理论上分配1G的内存给jvm,足以完成一个很大型的企业网站页面爬取。
核心处理参照了Hetrix的处理方法。所有的页面处理使用了一个链:下载->URL分析->内容分析提取->入库->地址过滤->地址队列 。内容分析使用了统计去噪,实测去噪效果还是比较满意的。内容提取准确率高达90%以上,当然本算法去噪效果没能达到100% ,下个版本做改进吧,程序都是在不完美中成长。

 

发几个图吧,Web版的控制中心,前端使用ajax作实时刷新,更新服务器数据。

 

 

32个任务运行结束。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值