免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4246 | 回复: 4
打印 上一主题 下一主题

用java开发一个搜索导航网站(一) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-11-28 23:25 |只看该作者 |倒序浏览
最近用业余时间做了一个搜索导航网站.该网站由定向爬取蜘蛛,网页分析,正文提取,切词,内容生成等模块
构成.全部采用JAVA开发.
   
   在网站开发过程中有不少体会,打算和各位分享
   
   1.  网站定向爬取
      2.   网络蜘蛛
   3.   网页分析,正文抽取
   4.  切词
   5.  内容管理
      
   我将分几个部分陆续和大家讨论

     (1)网站定向爬取

        一般的导航的网站,其内容大多是静态的连接。一个页面一大堆的网站名称连接,看的都头大。而且光看网站名称
     你很判断是否会对这个网站感兴趣。如果我们能把这些网站中的特色频道内容抓取一部分出来,让用户直接根据这些内容
     来决定是否去这个网站浏览,那么用户的体验会好很多。

        目前网络发展速度很快,每天都会新增加很多网站,大多数的个人网站都是三天打鱼两天晒网,质量高,更新频率高的
     网站不是很多,所以在爬取网页的时候需要精心挑选种子网站,把高质量的网站,有特色的网站推荐给用户。
        
     (2)网络蜘蛛开发
        
        爬取蜘蛛的开发,利用了一个开源的软件htmlparser,这个软件做蜘蛛是很不错的,只要提供个URL就能很好的获取页面
     数据流。利用HTMLPARSER很多细节就不用过多的考虑。在爬取网页的时候,重点要解决的是如何识别正文列表。因为一个网页
     上有很多的列表,各种标签都有。如何精确的识别出来是关键。而且,蜘蛛要有自动识别网页变化的功能,当一个网站的内容,
     布局发生变化后,能自动识别。

     (3)网页分析
        
        网页分析的核心是正文提取,正文提取是件非常困难的事情。也是最核心的技术环节,只有抽取的好,识别的准才能被用户所
     接受,否则搜出一堆乱七八糟的文字,谁也没兴趣看。正文抽取目前有很多的技术,但都不是很理想。因为现在的网页布局很复杂,
      不同网站有不同的风格,网页中到处是标签,广告。想做个比较通用的正文抽取程序是相当复杂的。
      
        我尝试过很多办法,但都不理想。后来经过不断的研究,我发先其实正文部分有一个共同的特点,就是绝大多数正文是
     在一个单一的TABLE或者DIV中。如果能识别出这个TABLE或者DIV就能准确的抓取正文。

        沿着这个思路,我不断的尝试。发现这个思路虽然简单,但实现起来确实很复杂。因为这个TABLE,DIV中很可能混入图片,连接
     表格,标签,干扰文字,广告等。如何自动剔除这些干扰需要很复杂的算法。而且在HTML中各种标签互相缠绕,互相干扰。经过一段
     时间的试验,我基本上掌握了抽取正文的技术。抽取的正文样式和原文章中的基本相同,里面的图片,连接,标签也做了很好的处理
     基本上达到实用阶段,大家有兴趣可以上我的网站比对下我抽取的和原文章的差异。欢迎大家赐教。

      网页分析的核心就是正文提取,由于我做的不是搜索引擎,所以抽取的难度要更大些,抽取的内容不能包含无关的文字。而且各种格式

,图片,连接,标签要保持原样,这个比较有挑战性。我个人认为正文识别是个有很高难度的课题,需要不断的研究。

   

     (4)切词
        切词有很重要的作用,主要用于识别正文,去除干扰。我使用正向最大匹配法,自己建立了一个专业词库。效果还不错        


     (5)内容管理
        我的网站使用的全部是静态的HTML页面,利用内容生成模块,把蜘蛛定向爬取的 内容套用模版然后生成网页,由于静态页面
      访问速度快,所以对服务器的压力就相对较小。而且也容易被搜索引擎爬取。

      我将陆续把部分示例代码和大家分享
   
     http://www.itsubway.com

论坛徽章:
0
2 [报告]
发表于 2007-11-29 09:04 |只看该作者
楼主的原创?

论坛徽章:
0
3 [报告]
发表于 2007-12-02 20:41 |只看该作者
可以考虑做成一个开源项目嘛

论坛徽章:
0
4 [报告]
发表于 2007-12-06 15:30 |只看该作者
ad居然成精华。。。佩服啊。。

论坛徽章:
0
5 [报告]
发表于 2007-12-07 08:47 |只看该作者
有别的网站的链接就是AD了?

还是你说这篇文章是别人的AD?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP