菜单
  
     网络爬虫,又称为Robots,Spiders以及Wanderers,几乎与网络同时出现。
    第一个网络爬虫是Matthew Gray的Wanderer,出现于1993的春天。在头两届国际万文网会议上出现过数篇关于网络爬虫的论文。但是那时候互联网上的信息规模比现在要小得多,那些文章中并没有阐述如何处理现在所面临的海量网络信息的技术。每个搜索引擎的后台,都有相应的网络爬虫在工作着。但是出于互相竞争的原因,这些网络爬虫的设计并没有公开,除了以下3 个:Google Crawler,Internet Archive Crawler以及Mercator 。7384
    搜索引擎Google中,采用了多台机器进行分布式爬行。它的网络爬虫包括5个功能模块,分别运行在不同的进程中。一个URL Server进程负责从一个 文件里读取URL(Uniform Resource Locator),并把它们分发给多个Crawler进 程。每个Crawler进程运行在不同的机器上,采用单线程和异步I/O同时从近 300个网站上获取数据。所有的Crawler将下载来的数据传输到同一个Store Server进程,它将这些页面压缩并存放在磁盘上。Indexer进程将这些页面从磁 盘上读出,它将URL从HTML页面中抽取出来,并将它们存放在另一个磁盘文 件中。一个URL Resolver进程读取这个存放链接的文件,将其中的相对链接转 化为绝对链接,然后存入一个文件,这个文件供URL Server进程读取。 Internet Archive Crawler也使用多台机器进行爬行 。每个Crawler进程可分 配64个站点同时爬行,并且每个站点最多只分配给一个Crawler来爬行。每个单线程的Crawler进程从磁盘中读取分配给其爬行的站点的种子URL,把它们发送到各自站点的爬行队列中。然后采用异步I/O从这些队列读取链接,下载对应的网页。一旦一个HTML网页下载下来,Crawler就将包含在其中的链接抽取 出来。如果链接指向同一个网站,那就将该链接加入到该站点的队列中;否则,就将该链接存放到磁盘中。一个批处理进程周期地将这些链接进行过滤, 去除重复链接,并把它们放入相应站点的队列中。
    Mercator是一个在可扩展性方面做得非常出色的Crawler 。Mercator完全用Java实现。它采用的数据结构可以不管爬行规模的大小,在内存中只占有限的空间。这些数据结构的大部分都在磁盘上,在内存中只存放有限的部分,伸缩性很强。Mercator采用模块化设计的思想,通过替换以及增减模块可以很方便地实现各种功能,如进行各类Web信息统计以及Web快照,体现了良好的可扩展性。Mercator由5个部分构成,分别负责:给即将付诸下载的URL进行排序;将主机名解析为IP地址;使用HTTP协议下载文档;从HTML文档中提取链 接;检测一个URL是否已经遇到过。
    一个网络爬虫程序通常网络爬虫从种子URL开始,通过网页内容解析,跟随网页上的超链接进行下载。互联网上的信息更新很快,必须定期更新已经 搜集过的旧信息,避免无效链接,同时获取最新信息。只有高效深度的挖掘才能使搜索引擎提供全面、即时的服务。
  1. 上一篇:国内外基于锅炉温度控制的研究现状
  2. 下一篇:五轴联动数控机床国内外发展现状
  1. 新型语文课设计国内外研究现状

  2. 私人健身教练国内外研究现状

  3. 纳米复合膜的研究现状

  4. 钛基复合材料制备工艺国内外研究现状

  5. 石墨烯的研究现状

  6. 主要吸附剂的研究现状

  7. 电动护理床国内外研究现状

  8. 慕课时代下中学信息技术课程教学改革

  9. 油画创作《舞台》色彩浅析

  10. 数据采集技术文献综述和参考文献

  11. 高校计算机辅助教学英文文献和中文翻译

  12. 浅议电视节目主持人的策划意识

  13. msp430g2553单片机高精度差分GPS技术研究

  14. 松节油香精微胶囊文献综述和参考文献

  15. 浙江省嘉兴市典型蔬菜基...

  16. 洪泽湖常见水生经济动物资源现状的调查

  17. 糖基化处理对大豆分离蛋白功能的影响

  

About

优尔论文网手机版...

主页:http://www.youerw.com

关闭返回