资源数据采集技术方案

更新时间:2023-04-30 16:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

资源数据采集技术方案

公司名称

2011年7月

二 O 一一年七月

目录

第 1 部分概述 (3)

1.1项目概况 (3)

1.2系统建设目标 (3)

1.3建设的原则 (4)

1.3.1 建设原则 (4)

1.4参考资料和标准 (5)

第 2部分系统总体框架与技术路线 (5)

2.1系统应用架构 (6)

2.2系统层次架构 (6)

2.3关键技术与路线 (7)

第 3部分系统设计规范 (9)

第 4部分系统详细设计 (10)

第1部分概述

1.1项目概况

Internet 已经发展成为当今世界上最大的信息库和全球范围内传播知识的主要渠道,站

点遍布全球的巨大信息服务网,为用户提供了一个极具价值的信息源。无论是个人的发展还是企

业竞争力的提升都越来越多地依赖对网上信息资源的利用。

现在是信息时代,信息是一种重要的资源,它在人们的生活和工作中起着重要的作用。

计算机和现代信息技术的迅速发展,使 Internet 成为人们传递信息的一个重要的桥梁。网络的不

断发展,伴随着大量信息的产生,如何在海量的信息源中查找搜集所需的信息资源成为了我们

今后建设在线预订类旅游网重要的组成部分。

因此,在当今高度信息化的社会里,信息的获取和信息的及时性。而 Web 数据采集可以通过一系列方法,依据用户兴趣,自动搜取网上特定种类的信息,去除无关数据和垃圾数据,筛选虚假

数据和迟滞数据,过滤重复数据。直接将信息按照用户的要求呈现给用户。可以大大减轻用户的信

息过载和信息迷失。

1.2系统建设目标

在线预订类旅游网是在线提供机票、酒店、旅游线路等旅游商品为主,涉及食、住、行、游、购、娱等多方面的综合资讯信息、全方位的旅行信息和预订服务的网站。

如果用户要搜集这一类网站的相关数据,通常的做法是人工浏览网站,查看最近更新的信息。然后再将之复制粘贴到 Excel 文档或已有资源系统中。这种做法不仅费时费力,而且

在查找的过程中可能还会遗漏,数据转移的过程中会出错。针对这种情况,在线预订类旅游网信

息自动采集的系统可以实现数据采集的高效化和自动化。

1.3建设的原则

1.3.1 建设原则

由于在线预订类旅游网的数据采集涉及的方面多、数据量大、采集源数据结构多样化的特点。因此,在进行项目建设的过程中,应该遵循以下原则:

可扩充性

根据实际的要求,系统可被方便地载减和灵活的扩展,使系统能适应变化和新情况。可以实现模块级别的动态扩展,而且是运行时的。所谓运行时模块的动态扩展,比如说你需要

增加一些新的功能,你可以将新开发的类和文件按照 Bundle 进行组织,然后直接扔到运行时环境下,这些功能就可以用了。因此系统不会受技术改造而重新做出调整。

创新性

软件的投资要考虑到今后的发展,不能使用落后的产品与技术,避免投资的浪费;在

系统软件选型、开发技术上,达到国内外先进水平。

规范性和标准性

整个设计方案从网络协议、操作系统到各个设计细节,应该全部遵循通用的国际或行业标准,符合国家有关标准规范的。

低耦合性

采集系统与其它系统彼此间相对独立,直接进行数据库入库、 sql 同步或者基于 txt/xml 的数据交换,保证整体系统的低耦合性。

高效性

在底层的技术实现上采用java 语言,跨平台,跨数据库,运行效率卓越。

安全、稳定、准确、及时性

采用先进的算法,采用多个子系统和工具组成一个安全、稳定、准确、及时的解决方案。方案在总体设计上遵循稳定、开放、可扩展、经济、安全的原则,从而使整个方案组成合理,

技术先进,易于扩展,既能满足当前的业务数据处理要求,又能符合长期发展的需要。

易操作和易维护原则

整个系统易于维护,容易操作,易学,易用,完全通过WEB 方式完成,降低维护的技术难度,也减少了人为隐患的发生。

1.4参考资料和标准

主要参阅并依据以下一些参考资料及标准:

《中国项目管理知识体系》(C-PMBOK),2001.5

GB/T 1526-1989《信息处理数据流程图、程序流程图、系统流程图、程序网络

图、系统资源图的文件编制符号及约定》

GB/T 8566-1995 《信息技术软件生存期过程》

GB/T 8567-1988 《计算机软件产品开发文件编制指南》

GB/T 9385-1988 《计算机软件需求说明编制指南》

GB/T 13702-1992 《计算机件分类与代码》

GB/T 11457-1995 《软件工程术语》

第 2 部分系统总体框架与技术路线

网络信息资源采集系统是一套功能强大的网络信息资源开发利用与整合系统,可用于定制跟踪和监控互联网实时信息,建立可再利用的信息服务系统。能够从各种网络信息源,包括网页、 BLOG 、论坛等采集用户感兴趣的特定信息,经自动分类处理后,以多种形式提供给最终用户使用。

2.1系统应用架构

数据流

控制流采集应用服务

互联网网络蜘蛛数据库

数据分析数据解析分组分析资源发布系统

客户端网络蜘蛛

网络蜘蛛:按照指定规则抓取网站数据。

数据分析:分析从网络蜘蛛来的数据,过滤掉我们不需要的信息。

数据解析:根据指定资源格式(字段 )的定义,进行数据库字段级别的解析。

分组分析:根据不同的网络资源类型进行分类,并以多种存储方式进行存储。

2.2系统层次架构

浏览器

表现层

网络资源采集数据转换数据导出数据发布网络请求

应用层采集监控数据分析消息通知登录验证数据处理

任务计划常用脚本库认证码识别

WEB 服务器应用服务器规范接口其他支撑层

关系数据文本文件数据图片视频数据

数据层整个系统分为四层,分别为:

数据层:数据层负责存储抓取来的各种信息及数据,这里面包括网页、文档、关

系型数据、多媒体数据等。

支撑层:支撑层提供了关键的硬、软件支撑系统,包括应用服务器、 WEB 服务器、规

范接口等规范支撑系统。

应用层:在应用层主要提供网络资源采集、数据转换、分析、处理、导出、发布、

采集监控、消息通知、登录验证、任务计划、认证码识别等服务。

表现层:表现层通过浏览器等方式,为用户提供多样化的信息服务。

2.3关键技术与路线

为了充分满足本项目的建设:我们采用先进、主流、可靠、实用、性价比好的三层架构

体系,充分考虑今后纵向、横向扩张能力。采用构件化和面向对象技术,使系统具有灵活的

扩展性和良好的移植性。

2.3.1 J2EE 规范体系

从软件层次上看,我们采用了典型的J2EE 三层架构体系,即应用—支撑—数据三层。简单地说, J2EE( Java[tm] 2 Platform Enterprise Edition )是一个标准中间件体系结构,旨在

简化和规范多层分布式应用系统的开发和部署,有了它,开发者只需要集中精力编写代码来表达应用的商业逻辑和表示逻辑,至于其他系统问题,如内存管理,多线程,资源分布和垃圾收集等,都将由 J2EE 自动完成。

J2EE 已经被证明是一个稳定的、可扩展的、成熟的平台,在国内外拥有众多成功的应

用实例。 J2EE 应用服务器( Application Server)采用目前国际最先进的开发理念、拥有许多

适合基于 Internet 应用需求的特点:

三层结构体系——最适合 Internet 环境,可以使系统有很强的可扩展性和可管理性。

面向对象、组件化设计—— 2EE 是一种组件技术,已完成的模块能方便的移植到其

它地方,可以提高开发速度,降低开发成本。

基于 JAVA 完全跨平台特性——与平台无关,适应Internet 需要,并能得到大多数

厂商支持,用户可根据需要选择合适的服务器硬件和数据库。并且如果需要更换

系统平台时, J2EE 也能方便的进行移植。

把J2EE 三层架构软件体系引用到资源采集系统,将大大提高系统的可移植性、可伸

缩性和可扩展性。

2.3.2 XML 技术

XML ( eXtensible Markup Language ,可扩展标记语言),是当前最热门的网络技术之一,

被称为“第二代 Web 语言”、“下一代网络应用的基石”。自它被提出以来,几乎得到了业界

所有大公司的支持。 XML 具有卓越的性能,它具有四大特点:

优良的数据存储格式

可扩展性

高度结构化

方便的网络传输

以 XML 技术作为支持,为用户自定义应用界面和业务数据结构,并将其与底层数据库

定义格式、界面标准输入、输出的接口转换作了实现,可实现分布式、异构应用系统之间的数据交换。

我们将在本项目中主要以XML 为存储方式,方便扩展和数据分析。

2.3.3 WEB2.0 技术

Web2.0,是相对Web1.0(2003 年以前的互联网模式)的新的一类互联网应用的统称,

是一次从核心内容到外部应用的革命,是依据“六度分隔”( 注:由美国哈佛大学社会心理学教授斯坦利·米尔格兰姆发现的,你和任何一个陌生人之间所间隔的人不会超过六个,也

就是说,最多通过六个人你就能够认识任何一个陌生人。)、 XML 、 AJAX等新理论和技术

实现的互联网新一代模式。由Web1.0单纯通过网络浏览器浏览html 网页模式向内容更丰富、

联系性更强、工具性更强的Web2.0 互联网模式的发展已经成为互联网新的发展趋势。

Web1.0 到 Web2.0 的转变,具体的说,从模式上是单纯的“读”向“写”、“共同建设”发展;由

被动地接收互联网信息向主动创造网络信息迈进。运行机制上,由“Client Server”向“Web Services转”变;作者由程序员等专业人士向全部普通用户发展;应用上由初级的“滑稽”的应用向全面大量应用发展。采用创新的Ajax 技术,同等网络环境下,页面响应时间最高减少90%。

2.3.4 系统集成 API

XML 文档结构在很多方面可以方便地反映对象的结构,这也是其适合面向对象的软件

技术的一个关键点。使用XML 对数据源的数据进行处理,它起着接口层或者封装的作用,

这样不同的应用程序之间,不同的操作系统之间,不同的数据库之间都可以交换数据。使用XML 作为数据交换工具还可以解决异构数据库之间的集成。

对本项目中涉及到的数据采集、转换、分析、处理等问题,我们将开发专用的数据接口,采

用 XML 技术作为数据交换的页面描述规范。

XStream 是一个 Java 和 XML 相互转换的工具。使用非常的简单,并且可以自定义转换

的过程,但是这个组件仅能做的就是这些最基本的工作,有了这个组件,我们可以不用考虑具体

一个 Java 对象和 XML 之间问题了。

第 3 部分系统设计规范

第 4 部分系统详细设计

4.1应用功能设计

4.1.1 资源采集

我们可以使用采集,对网络上的各种资源进行挖掘。

a)采集工程:采集工作的详细设置文件,包含了要采集的资源链接。

1.精确:根据指定资源格式 (字段 ) 的定义,进行数据库字段级别的采集。

2.蜘蛛 /爬虫:根据指定的文件匹配表达式,自动对指定网站的资源进行全面分

析和采集。

b)字段:各种资源的最小单位,譬如您要采集某个网站的多个帖子,那么每个帖子可能包

含以下字段:作者、标题、日期、内容等。

c)链页:一些帖子在多页面里的,这种情况下您可以为帖子的内容字段设置链页属性,

自动把多个分页的内容合并到内容字段。

d)追踪:一些资源是要从列表页面中,通过点击多个页面才显示的,这种情况下,您可以

为内容自动设置跟踪属性,自动获取最终的内容。

e)登录验证:一些资源网站需要您登录后才可以访问内容,这种情况下下,您可以为

整个网站、每个链接甚至每个资源单独定义登录验证以满足具体需求。

1.参数:这是模拟登录需要的参数,譬如用户名、密码等。

2.登录采集工程:一些网站的登录认证相当复杂,往往会采用一些动态参数/值,

如果用固定的参数是无法满足登录需求的,这个时候,您可以使用采集工程来

自动获取登录参数的值。

3.登录脚本:如果即便使用采集工程仍然无法满足一些特别网站的登录需求,您

可以使用自定义的登录脚本来实现相应的登录认证。

f)数据处理:

1. 脏字过滤:对符合国家规定的敏感字符的过滤,还可以自定义要过滤的字符,

以确保采集到的内容符合相关法律法规。

2.垃圾内容过滤:使用贝叶斯概率模型对已采集的内容自动分析判定是否为垃圾

内容,您可以自行对各种垃圾内容进行过滤。

3.内容嗅探:对于Flash/Silverlight 播放器,会在页面加载之后才从后台获取实际

的文件(.FLV/MP3/.XAP 等),您可以使用内容嗅探实现对这些实际内容的采集。

4.关键字 /标签 (Tag)自动分析:利用全文分词对采集的内容进行分析,自动获取

内容的关键字 /标签列表。

5. 文件格式批量转换:对大量文件的快速转换,改变图片或视频的大小/添加水

印/改变格式,抽取压缩文件, Office 系列文档转换为 HTML ,以多种方式修改文件

名称和内容,修改图片文件属性,文本排版,文本混淆,文本简繁大小写编码互

转,文本切分合并,网页文本互转,不良图片过滤,数据转换等。

g) 图片转换:改变图片大小和格式,添加水印,支持jpg 、 bmp、 png、gif 、icl 、 jpeg

等。

h) 压缩文档:抽取/转换 /生成压缩文档,支持zip 、 rar 等。

i)Office 文档支持:支持 doc、 docx、 xls、 xlsx 、 xml 、 pdf 、 rtf 等。

j)文本排版:段落智能修正、去掉干扰符、修正段落首尾空格、修正标点符号,支持txt,htm,eml 。

k) 文本切分合并:按大小、行数或段落数剪切文本内容、和并内容,支持txt,htm,eml。l)不良图片过滤:识别并过滤不良图片,支持所有图片。

m)数据转换:使用自定义脚本转换数据和文件,支持采集工程、各种数据库和各种文件。

n)快速下载:

1.链接分析:复制要下载各种资源 (如图片等 )的链接或网页内容,全自动分析并下

载到本地磁盘。

2.嗅探:复制视频地址或内容,全自动分析并下载视频,特有嗅探功能,支持所

有视频网站。

o)通过多线程并行采集,加快采集速度。

4.1.2 数据导出

a) 导出数据库:把采集后的数据导出到各大数据库/数据文件中。

b)以 Excel 、 XML 等文件形式导出。

c)可以把文件导出到 FTP。

d)自定义导出脚本。

4.1.3 资源信息发布

a)采集后的数据:可以把采集后的数据,发布到指定网站或系统。

b)网络请求:可以自定义请求,譬如网络投票等。

4.1.4 任务计划

可以指定采集、转换、导出、发布、请求等各种任务定时执行。

a)可启用多个线程来完成同一个采集任务。

b)可自由设定采集网页数和暂停的时间,此功能主要解决采集过快而被屏闭或禁止访问

等问题。

c)可以在采集当中随身暂停、启动或停止任务。

4.1.5 消息通知

能够自动通过多种方式(邮件、系统日志、系统声音等)通知采集发布情况。

a)在各种任务完成之后,如采集,发布,计划任务等。

b)监控指定网站并在数据改变时。

4.1.6 监控设置

当网络资源更新或采集到新的资源信息时,通过各种通知方式,随时提醒。

4.1.7 脚本定义

脚本是对各种功能的自定义扩展,支持JavaScript 语言编写。

a)采集脚本:在采集工程中,如果遇到一些特殊的资源,正常的采集方式无法胜任的时

候,可以通过脚本来进行自定义的采集。

b)发布脚本:可以针对特殊的网站进行发送请求。

c) 常用脚本:系统内置的常用的脚本,如对专用链的解释/编码、条形码的生成、敏

感字符的过滤、中文分词 /Tag 识别、计算数学表达式、 RSS 解释与生成、消息通知等。

4.1.8 认证码识别

系统自动识别各种登录页面的认证码、验证码等。

a)默认识别:全自动识别各种常见的认证码。

b)智能识别:自定义识别各种特殊的认证码。

4.1.9 系统扩展

系统提供以下丰富的程序接口,方便系统进行二次开发。

a)消息通知:编写各种特定的消息通知方式以满足需求。

b)中文分词 /Tag 识别。

c)数据转换:转换各种采集后的数据到系统当中。

d)功能扩展:对各种功能 (采集、发布、脚本、消息通知、计划任务等 )进行自定义设置并应

用到实际的系统运行中。

4.1.10 任务管理

可以对采集、发布、请求、计划任务、脚本、消息通知等各种任务进行全面管理。

4.1.11 地图周边资源采集

可根据采集到的数据在地图上显示,以该点为中心,在指定的搜索范围内搜索其周边的所有资源信息,并采集到系统当中。

以酒店为例:以酒店为中心的 5 公里范围内,在这范围内的所有酒店、旅行社、小吃、旅游景点、购物场所、公交信息等都可以搜索到并采集下来。

荆轲,一个四处为家的刺客,他的心犹如浮云,心如飘蓬,是没有根的,然而高渐离的筑声,却成了他愿意停留在燕国这片土地上的原由。

虽是初见,却如故人。也许所有的遇见,早已经是前世的注定,没有早晚,刚好在合适的时间遇见你,就是最美的相识。

他曾经游历过多少地方,自己已经数不清,但是没有一处可以挽留他行走的脚步,唯有今日高渐离的筑声,让他怎么也舍不得离开。

从此二人心性相投,在燕国集市上,载歌击筑,把盏言欢,欢喜处。嬉笑开颜,忧伤处,潸然泪下,即便这些神经质的状态,被集市上的人哗然,可是对知己而言,又如何呢?

人生难得一知己,悲欢喜悦与何人相干呢?我们各自欢喜就好。生为乱世,能够遇到如此懂得自己的人,是一件多么难得的幸福事情啊!

然而,这快意的知己日子,总归逃不过那个时代的残酷,千不该,万不该,荆轲不该是一位刺客,若不如此,又如何会被愚蠢的太子丹派去刺杀秦王,一去不复返。

倘若荆轲不是刺客,也就更不可能身如飘蓬,居无定所,也许不可能遇见高渐离,所有一切都是冥冥之中的注定吧!

“风萧萧兮,易水寒,壮士一去兮,不复还。”知己的离去,让高渐离心如刀割,整日独自击筑高歌,在痛苦中浑噩度日,这样疏懒的生活,无人懂他,对他来说已经倦怠了,他厌倦了这

种孤独和苟且的日子。

——荆轲的他本可以大隐于野,疏远于喧嚣处,可是他同样选择了一条不归路。去咸阳宫为上宾演奏,最终被人认出,他并不害怕,倒是坦然自若。因为他心里清楚这里就是染过他知己

鲜血的宫殿,若能在这里死去,也算是一种缘分。

然而事与愿违,秦王并没杀了他,给他一个痛快,而是熏瞎了他的双目,让他生不如死。在一次次的心伤中,他在筑中灌满了铅,仿效荆轲,想与秦王同归于尽,只是他心里非常清楚,

他根本伤及不了秦王毫发。

“风萧萧兮,易水寒,壮士一去兮,不他之所以如此,以卵击石,无非就是想痛快死去,是一种求死的方式罢了。千百年以后,后人深记那易水的水有多寒冷,那易水的风有多刺骨。那句

复还”里融入了多少痛苦和无奈?

几千年之后,易水的水,易水的风,易水的雪,一年复一年,而那个凄美的故事,也这样经久不衰的传颂着。

不由让我又想起伯牙绝弦的故事来,因为知己子期的离世,伯牙绝弦谢知音。

人世间有一种高山流水的知己,叫伯牙和子期,也有一种侠义知己,叫荆轲与高渐离。古语曰:“士为知己者死。”这可能是世间最高的知己情意了吧!

人生漫漫,朋友易得,知己难求。

知己情,是我们需要用生命去珍惜和呵护的情意。然而这个时代,情意似乎越来越廉价,从深交到陌生。若你遇到知己情,别忘了好好珍惜。

本文来源:https://www.bwwdw.com/article/jfce.html

Top