标题：网站采集器
需求概述
网站采集
网站管理员希望将别人的整站数据下载到自己的网站里或者将别人网站的一些内容保存到自己的服务器上。从内容中抽取相关的字段，发布到自己的网站系统中。有时需要将网页相关的文件也保存到本地，如图片、附件等。
网站管理员会定时从同一网站上抓取内容，希望已经抓取的内容不要再发布到网站系统中。对于一些网站，需要登陆才能获取页面。网站管理员希望通能够通过一个内容列表页面获取所有的相关内容，包括内容列表的其它分页。当第二次抓取相同网站时，希望不要再重复第一次的设定。
信息采集
网站管理员从互联网中收集各类图片、笑话、新闻、技术等各类信息，然后分类、编辑，发布到自己的网站系统中。网站管理员一般通过搜索引擎搜索各类关键字获取目标网址，然后再提取网页中的内容。关键字的组织决定获取内容的准确性和数量。由于内容来自不同的网站，所以提取内容的方法也各不相同。对于某一类的信息，发布到网站系统的数据结构是相同的。
网站管理员对站内进行搜索，将相关的内容在首页上进行编排和索引。
企业从互联网上搜索email和电话号码，并且能够查看该信息的相关信息，以便了解该对象的基本情况。企业希望能够搜索某一类别的客户信息，如这个客户属于女性，年龄为20到30岁等。并且能够将采集到的对象信息保存到企业内部的客户管理系统中。
企业需要了解某一产品的信息，希望得到该类产品的报价、厂商等，以及这些信息的对比情况。并且能够得到报价、厂商的近一步信息。这些信息希望能够保存到企业的内部的ERP系统或其它系统中。
数据结构化
企业办公产生的电子文档，客户提交的客户资料等这些数据，一般需要大量的人力手工输入到企业的ERP系统或信息系统中，企业希望能够通过软件从这些文档中抽取相关的数据自动导入到系统中。这些数据一般都有固定的模板格式，并且同一类文档的模板格式是相同的。如客户的家庭信息，客户1和客户2的模板格式是一样的，只是内容不一样。
主要技术
网站采集器核心技术是模式定义和模式匹配。模式属于人工智能的术语，意思为前人所积累的经验的抽象和升华。简单地说，就是从不断重复出现的事件中发现和抽象出的规律，是解决问题的经验的总结。只要是一再重复出现的事物，就可能存在某种模式。
所以要让网站采集器能够运行，目标网站必须具备重复出现的特征。目前大多网站都是动态生成的，这样就会让同一模板的页面包含相同的内容，网站采集器正是利用这些相同的内容来定位采集数据的。
网站采集器中的模式大多不是程序自动发现的，目前几乎所有的网站采集器产品都需要通过人工来定义。但模式本身是个很复杂，很抽象的内容，所以所有的开发者精力都花在怎样让模式定义更简单，更准确，这也是网站采集器竞争力的衡量标准。
但我们怎样来描述模式呢，目前技术主要有两种方式：正则表达式定义和文档结构定义。
正则表达式定义
正则表达式定义是目前主流应用的技术，主要代表为火车头采集器。此技术简单，灵活性高。但用户操作复杂。由于此模式作用于网页的源代码上，因此匹配的结果受代码版面格式影响比较大，并且也不够直观，对比较复杂的页面结构几乎无能为力。 目前已经有几款产品使用辅助工具来减低用户的操作难度。
文档结构定义
文档结构定义应该说它是目前最先进的技术，已经具备一定的模式学习能力。此模式作用于文档这一层，不同于正则表达式作用于页面源代码。所谓文档这一层，指的是源代码运行后所生成的实际对象，即用户在浏览器所看到的内容。所以操作可视化是此技术天生就具备的能力。
由于它是对文档结构进行匹配，所以它不受页面源代码的影响，用户定义比较直观，并且程序能够根据文档对象获取更多的逻辑上的特征信息，匹配更准确，通用性更强。
此技术在学术研究论文上已经呈现过，也在几家实验室开发出此类产品。但真正在商业上应用很少。
目前能够面向普通大众的，只有DM实验室推出的视采采集器，该产品不仅在技术起点上比较高，而且在用户使用这一层上，所独有的实时用户操作向导功能也是让人惊奇的，此技术让专业级操作变为傻瓜式操作，真是科学让一切变为可能！
用户特点
系统的最终用户群包含网站的管理员们，对一些给目标地址做了隐藏的网站，可能会使他们操作失败，特别有些网站对网页内容作了扰乱处理，使得他们更难准确地定义规则。对于这些问题，系统提供一些范例和匹配通配符，告诉他们的应对方法。并且官方网站提供交流论坛，共享和学习相互之间的经验。
对于信息采集的用户，系统提供丰富的模板模式供用户使用，如email匹配模式、电话号码匹配模式等，只需要用户选择一个模板，就可以获得他们想要的信息。当然官方网站提供丰富模板资源供以下载。
对于数据结构化的应用，会有第三方的技术人员提供支持。
系统预留了输入输出的编程接口，一些用户扩展这些接口，使系统应用到更多的场合下。针对这些用户，系统提供详细的接口说明，扩展示例代码。我们提供开发包，并描述每个类和每个方法的使用方法和功能。
还有一类用户属于商人的范畴，他们仅从事规则的制作，在网上交换或出售自己的规则。他们更关心网站的搜索和内容的质量，他们分两种类型，一种是猎人，他们能够发现各种各样的信息，能够满足各类网管的内容需求，他们从数量上获取大把金钱。当然，对于个别稀有的内容，价格就像黄金一样了。另一种属于黑客，他们精通web技术，机智并执着，在他们手里，都是一些很难发掘到的精品，当然价格都是高昂的。
由于采集系统属于开放式软件，会有很多人去分析和使用采集系统中的组件，扩展和完善采集系统。他们使用的级别不仅是系统的界面上，而是深入到代码的内部上，他们需要参考采集系统的各类技术文档，所以系统除了用户手册，其它的开发文档也是必不可少的。
系统需求
多样化的采集目标
信息分布在各种信息存储系统中，各种存储系统有着各自的交互机制，需要采集系统提供多种并可扩展的连接模块。
多样化的数据格式
信息以多种形式存在，如网页、word文档、pdf等。这些不同的格式数据需要采用不同的采集机制。
分布式海量数据
由于网络通信的延时和网络带宽的限制，并发多线程通信能够有效地减低延时和抢夺资源。
数据横向和纵向采集
需要系统自动采集数据的下一页；自动采集数据的关联附件；自动根据当前采集结果采集下一数据。
用户操作简单、快捷
多样且复杂的数据格式增加用户的作业难度，用户希望所见及所得，及时提供相应的操作提示信息。
市场分析
互联网应用
随着互联网的发展及普及，互联网用户迅速增长，上网已成为人们生活中的日常内容，人们通过网站阅读，发表，搜索，交流，购物等，所有这些上网行为，由点到线，都将汇聚庞大的商业价值。因此，互联网成为众多人的梦想帝国，淘金之地。不管您是腰缠万贯，还是身无分文，这里只谈信息为王，服务至上。因此信息的创造、收集、组织和再加工是网站的生存基础。信息采集系统可以通过网站管理员指定的网站地址和预定义的抓取规则，自动获取网页内容，自动按照自身网站系统的数据结构抽取数据，并发布到网站系统中，让您不花丝毫心血和金钱，就可以使您的网站一夜之间网罗天下。
信息搜索
由于各种用户群体的网络连接，使得互联网成为一个包罗万象的信息库，商业的、学术的、个体的等等信息都可以在互联网上发布和获取，因此，企业可以通过互联网获取客户资源、市场行情、商业信息等。但在这茫茫的信息大海，我们常常缺少一种工具来发现我们所关心的内容，并有效的组织和储备它们，使之成为企业的内部资源。信息采集系统可以根据数据模式，自动通过搜索引擎检索数据，将匹配的信息显示在您的桌面上。
资料录入
企业管理系统，企业信息管理系统、客户服务系统等各种信息处理系统，它们只能处理结构化的数据，如学生信息包括用户名、性别、年龄等属性，它们必须保存在预定义的结构里。但系统外界会有大量的非结构化数据，如客户提交的材料、公司内部文档等。而这些数据通常是人工统计和人工输入各类信息处理系统中。信息采集系统它能将一篇文档按信息系统的数据结构自动抽取成多个字段，并自动将这些字段导入到企业的各类信息处理系统中。
研发机构
DM实验室视采采集器是由DM实验室研发的一款网站采集软件。该系统使用先进的网页结构特征识别以及样本自动学习技术突破当今数据抽取复杂难应用的难题。视采采集器主要包含两项技术成果：
◇可视化用户体验
数据可以用图象、曲线、二维图形、三维体和动画来显示，并可对其模式和相互关系进行可视化分析。
◇半结构化数据模式抽取
模式抽取指的是从半结构化数据中自动发现数据的结构特征。模式抽取在半结构化数据研究领域中具有重要意义，它是数据挖掘的基础。东南大学Versatile是东南大学研制的一个基于CORBA的异构数据源集成系统原型,旨在以“即插即用”方式集成来自不同数据源的数据,该系统的研制受到国家自然科学基金资助.在Versatile中采用对象集成模型OIM作为各数据源的输出模式的数据模型,查询语言是OIQL.查询集成器QI(query integrator)接收OIQL查询后分解至各个数据源.在Versatile中,有些数据源,如RDBMS和OODBMS,由于本身具有数据管理功能,因此相应的包装器(wrapper)将OIQL翻译为本地查询语言(如SQL,OQL等),再将结构转换为OIM对象；而某些数据源,如文件系统、Web数据,由于自身没有数据查询功能,因此在Versatile中包装器将数据包装为OIM,然后实施OIM的查询处理IBM数据实验室IBM Neel Sundaresan等在基于Web的单词/缩写的挖掘中，把2级的二元性问题扩展为n级，并实现用户英文单词简称的抽取。