基于web的新闻采集系统.docx
- 文档编号:17844978
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:81
- 大小:1.67MB
基于web的新闻采集系统.docx
《基于web的新闻采集系统.docx》由会员分享,可在线阅读,更多相关《基于web的新闻采集系统.docx(81页珍藏版)》请在冰点文库上搜索。
基于web的新闻采集系统
**大学学院
工学学士学位论文(设计)
题目:
基于Web的行业新闻采集系统
学号:
姓名:
院(系):
信息工程学院
专业:
信息管理与系统
完成日期:
2011.12.20
指导老师:
摘要
随着互联网的飞速发展,信息时代的到来,面对网络上泛滥的新闻信息,而采集和过滤一些有用的信息对于我们来说是十分重要的。
行业新闻采集系统是将非结构化的新闻文章从多个新闻来源网页中抽取出来保存到结构化的数据库中的过程。
尤其是对于大型门户网站,比如新浪,腾讯他们每天的网站信息都更新,而且范围很广,全国各地,甚至全球发生的信息都能每天看到更新,而他们正是利用采集系统从各大媒体网站,外国网站采集过来的。
因此,信息的采集至关重要。
一般的网站新闻发布平台都是采用人工输入信息,对于中小型网站这样的工作量很算可以,但是网站大了,信息就很庞大了,像那种分类信息网,更新的工作就变得很复杂,如果有专门的类似搜索引擎能检索采集到最新的相关信息然后发布在自己的网站上,因此建立专门的行业新闻采集系统,从相关网站采集有效的新闻信息可以减少很多工作量,而且可以有效的进行修改和过滤工作。
目前比较有名的采集系统有火车头,视采新闻采集器[2]、万能新闻采集器、新浪新闻采集器。
关键字:
信息采集;行业新闻采集;.net;SQLserver
Abstract
WiththerapiddevelopmentoftheInternet,theadventoftheinformationage,facethefloodofnewsinformationnetwork,andthecollectionandfiltersomeusefulinformationforus,itisveryimportant.Newsgatheringsystemiswillunstructurednewsarticlesfrommultiplesourcesofnewspageextractedsavedtothestructuraldatabaseinprocess.
Especiallyforlargewebportal,suchassina,tencenteverydaytheywebsiteinformationupdates,andtherangeisverywide,alloverthecountry,andeventheglobalhappenedtoseeupdateinformationeveryday,andtheyaretheuseofacquisitionsystemfromthemajormediawebsite,foreignwebsitecollected.
Therefore,thecollectionoftheinformationisveryimportant.Thegeneralwebnewsreleaseplatformareusingartificialinputinformation,forsmallandmediumwebsitesuchworkloadiscalculatecan,butthesiteisbig,theinformationisverybig,liketheclassificationandinformationnetwork,updatetheworkisverycomplex,ifhavespecialsimilarsearchenginecanretrievecollectiontothelatestinformationandthenreleasedonhiswebsite,thusestablishingspecialcollectionsystem,fromrelatedwebsitecollectioneffectivenewsinformationcanreducealotworkload,andcaneffectivelymodifiedandfilterwork.Atpresentmorefamouscollectionsystemhasalocomotive,dependingontheminingnewsterminal[2];Universalnewscollector;Sinanewscollector.
Keywords:
newscollection;Informationcollection;.net;SQLserver
目 录
摘要I
AbstractII
摘要I
AbstractII
第一章引言1
1.1课题背景1
1.2开发系统的意义1
1.3课题名称2
1.4问题描述2
第二章可行性研究3
2.1经济可行性3
2.2技术可行性3
2.3开发工具简介4
2.4工厂模式三层架构介绍6
第三章系统分析10
3.1功能需求10
3.2性能需求10
3.3运行需求10
3.4数据流图11
3.5用例图12
3.6数据字典16
3.7概念结构设计18
3.8逻辑结构设计20
3.9数据库主要表结构说明22
3.10物理结构设计23
第四章总体设计26
4.1总体功能模块设计26
4.2模块功能细化26
第五章详细设计29
5.1活动图29
5.2序列图34
5.3类图39
第六章编码46
6.1ADO.NET的使用46
6.2前台技术56
6.3系统运行界面61
6.4采集管理功能实现62
6.5入库管理功能实现66
6.6新闻管理实现68
6.7新闻类别管理69
6.8用户管理实现71
6.9权限管理72
第七章系统测试76
7.1测试目的76
7.2测试方案76
总结78
参考文献79
致谢80
附录81
附录一系统使用说明书81
附录二:
信息采集83
第一章引言
1.1课题背景
信息自古就有无限的价值,随着时代的不断发展,人类不知不觉已经来到了信息时代,各行各业都充斥了无数的信息,而信息的价值就在于信息的流通,如果信息能够及时的流通和传递起来,才能发挥信息真正的不可比拟的价值。
在市场经济条件下,信息已经成为一种极其重要的商品。
信息社会通常被定义为信息生产和消费的集中。
信息集中度取决于对信息的需求以及此需求被满足的程度。
因此,一种看待信息社会是否形成的方法是评价信息的交换强度及信息内部流动的持久性。
那么,什么是信息价值?
它的价值如何确定?
这些问题已成为当今信息社会所面临的最基本问题之一。
近年来,行为经济学把经济学理论和心理学理论结合起来研究信息的主观价值,取得了一定的成果。
这些研究成果对于我们认识了解信息价值的确定和市场经济条件下人们对信息的需求特性,具有重要的启示作用。
如何从海量信息中收集有价值的信息资料,并进行分析研究,形成企业各种决策的依据,是信息人员及市场研究人员所面临的一个问题。
信息必须经过汇总、整合、分析才能产生价值,零散的信息只能是新闻性的,无法体现真正的商业价值。
对于企业以及信息分析人员来说,一方面要在大量的信息中过滤出有效的价值点,同时又要降低获取相应信息的成本,使信息的实际使用价值大于收集、分析信息等过程所产生的成本,使信息为企业的决策带来增值价值。
21世纪是信息时代,掌握了迅速便捷的信息就能在激烈的竞争中占取主动,而正是信息的这种金子般的价值也注定了信息本身就是一个行业一个产业。
而这种行业将为社会做出巨大的贡献,所以我这个课题就是关于收集共享信息的。
1.2开发系统的意义
我要完成的设计能够通过各种手段来收集各行业的一些杂乱庞大的信息,并总结分析出许多有用的有价值的信息。
例如我们对一个行业的众多企业收集他们的企业的各种信息,小到工人日常支出,大到企业年产值及企业竞争力。
少数的信息看起来并没有什么价值,但是一旦我们能够获取到整个行业大部分重要企业的大量信息,并且这种信息是可以实时更新的,我们就会发现,通过各种数据的分析排名,我们可以了解到数据背后的东西,例如可以根据工人的平均工资来了解到某个行业中工人待遇的企业排名。
可以根据企业的总产值的排名来大概了解在这个行业中企业的竞争力的排名。
像这些经过分析处理过的信息才是真正有价值的信息,当然信息的处理可以根据使用者自身的需求来选择处理信息的方式,例如一些函数的组合或者是统计学方法。
总之,通过这个网站,对于行业的数据采集分析并形成有巨大的价值的过程有着很大的推进的意义。
这个课题,其实原理和方法都是简单通俗易懂的,但是改变人们生活方式,推动社会进步的恰恰是那些简单的发明创造,当然这个课题可能达不到这样的高度,但这样的尝试是非常有价值的。
因为它架设起来容易,复杂的使我们具体去操作,例如收集企业信息,我们可以通过与政府的合作来收集,也可以通过问卷调查来收集,还可以让企业自己登陆我们的网站来添加信息。
在日新月异的信息时代,掌握信息的快速流通手段,在某种程度上我们就走在了时代行业的前列,所以我想这个课题在某种程度上有着划时代的意义。
像这种课题,在国外发展已经非常成熟,在国内则刚刚起步,例如国外的福布斯排名,国内的胡润排名,所以,从商业上看,这个行业还是非常有前途的。
1.3课题名称
课题名称:
基于Web的行业新闻采集系统。
1.4问题描述
本课题所设计的目标是行业新闻采集系统(WebNewscollectionSystem),采用Internet/Intranet方式,是基于浏览器/服务器的管理系统,它由客户在客户端通过浏览器访问服务器上的系统的应用程序,进行网页信息采集,帅选,审核,入库等一系列操作。
第二章可行性研究
基于web的行业新闻采集系统是基于B/S模型的设计理念的系统,它能提供批量采集指定站点,编辑采集项目,帅选和审核入库功能,现就其可行性如下:
2.1经济可行性
首先,由于现在的企业的迅速发展使得企业每天的业务量、工作量是越来越大。
而且应对企业宣传、人员招聘、产品宣传等工作,处理和传递信息,企业往往需要增加宣传、招聘服务人员,以提高工作效率,这无疑会大大增加企业的成本,而且这个费用开支是持续、递增的。
而开发一个简单的通用的采集系统能够整合到一般的网站项目中,代替人工输入,大大减少劳动力和成本。
其次,如果说建设大型的专业性的网站平台,需要企业斥资聘请专业的团队定制和管理,那么对于功能需求相对普及化的中小型站点,就没有能力也没有必要付出这么昂贵的代价。
对于一般性的中小型网站建设,完全可以花费很少的资本,选择合适的采集系统进行搭建,从而以较少的投入获得较高的效益。
总的来说,开发一个这样的系统费用不是很高,而系统带来的方便和效益是原始操作方式所无法比拟。
而且是一劳永逸的事情。
从经济上考虑,本采集系统是可行的。
2.2技术可行性
Ø本系统采用微软的面向对象语言C#,加上B/S架构语言ASP.NET。
Ø本系统将很好地和各种类型的信息网站整合,并且可以二次开发,自定义功能配置。
Ø采用本系统只需添置低档计算机,如果条件允许,可以使用P4以上配置。
Ø采用本系统不会对现有软件会产生冲突。
Ø用户只需要短时间来熟悉本系统。
Ø利用好现有技术和人员,完全可以实现预期目标。
2.3开发工具简介
2.3.1关于VisualStudio2010
图2-1vs架构图
Chart2-1vsframworkarchitecture
VisualStudio2010提供了高级开发工具、调试功能、数据库功能和创新功能,帮助在各种平台上快速创建当前最先进的应用程序。
VisualStudio2010包括各种增强功能,例如可视化设计器(使用.NETFramework4.0加速开发)、对Web开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。
VisualStudio2010为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持AJAX的Web应用程序。
开发人员能够利用这些丰富的客户端和服务器端框架轻松构建以客户为中心的Web应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问ASP.NET应用程序服务和Microsoft平台。
快速的应用程序开发
为了帮助开发人员迅速创建先进的软件,VisualStudio2010提供了改进的语言和数据功能,例如语言集成的查询(LINQ),各个编程人员可以利用这些功能更轻松地构建解决方案以分析和处理信息。
VisualStudio2010还使开发人员能够从同一开发环境内创建面向多个.NETFramework版本的应用程序。
开发人员能够构建面向.NETFramework2.0、3.0或3.5及4.0的应用程序,意味他们可以在同一环境中支持各种各样的项目。
突破性的用户体验
VisualStudio2010为开发人员提供了在最新平台上加速创建紧密联系的应用程序的新工具,这些平台包括Web、WindowsVista、Office2007、SQLServer2008和WindowsServer2008。
对于Web,ASP.NETAJAX及其他新技术使开发人员能够迅速创建更高效、交互式更强和更个性化的新一代Web体验。
高效的团队协作
VisualStudio2010提供了帮助开发团队改进协作的扩展的和改进的服务项目,包括帮助将数据库专业人员和图形设计人员加入到开发流程的工具。
2.3.2关于ASP.NET
2001年,微软在前面三个版本的ASP基础上,推出了全新的ASP.NET,它开始抛弃前面三个版本都在使用的脚本语言,而是使用VisualBasic.NET作为它的默认语言。
与ASP程序是解释执行的不同,在ASP.NET中,所有的程序执行都是经过服务器编译的,在执行效率上有很大的提高,也更稳定。
其结构也与前面的版本大相径庭,几乎完全是基于组件和模块化的,Web应用程序的开发人员使用这个开发环境可以实现更加模块化的、功能更强大的应用程序。
2.3.3关于SQLServer2005
SQLServer2005是一种高效的关系数据库系统。
用户通过SQLServer2000提供的各种管理和维护工具,可以方便、灵活、快捷地实现对数据的管理、分析和维护;同时,SQLServer2005还提供了以Web标准为基础的可扩展数据库编程功能和支持大量的XML和Internet标准,允许用户通过系统内置存储过程和XML格式来存储和检索数据。
SQLServer2005凭借其高度的可靠性和可伸缩性,已成为建立企业级应用系统的优秀平台。
SQLServer2005的程序设计模型与WindowsDNA(分布式因特网应用程序体系结构)密切集成,可用以开发Web应用程序,而且SQLServer2005支持英语查询(EnglishQuery)和Microsoft搜索服务等功能,在Web应用程序只能感包含了友好的查询和强大的搜索功能。
2.4工厂模式三层架构介绍
一、什么是三层结构
在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。
微软推荐的分层式结构一般分为三层,从下至上分别为:
数据访问层、业务逻辑层(又或成为领域层)、表示层
二、三层结构的优点
1、开发人员可以只关注整个结构中的其中某一层;
2、可以很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、有利于标准化;
5、利于各层逻辑的复用。
图2-1文档结构图
Chart2-2documentarchitecture
三、分层式结构缺陷:
1、降低了系统的性能。
这是不言而喻的。
如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
2、有时会导致级联的修改。
这种修改尤其体现在自上而下的方向。
如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
四、三层架构的适用场合
一般适合于中大型项目,比较小型的项目一般不建议采用三层架构
三层架构(3-tierapplication):
通常意义上的三层架构就是将整个业务应用划分为:
WEB表示层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
区分层次的目的即为了“高内聚,低耦合”的思想。
在ASP.NET下进行数据的开发,运用三层架构可以让代码的可读性和功能的扩展性有很好的提高。
首先
图2-3三层架构图
Chart2-3Three-tierarchitecture
上图是普通三层架构模型,页面层没有直接和数据库关联,而是通过业务逻辑层访问数据访问层,而数据访问层是具体的实现,只能访问某一类数据库类型。
考虑到可能用于不同的数据库环境,因此采用工厂模式的三层架构
图2-4工厂三层架构图
Chart2-4FactoryThree-tierarchitecture
界面层没有直接访问数据库,而是访问业务逻辑层,并且可以通过工厂动态切换到不同的数据库,只要都实现IDAL访问接口就可以,其中工厂创建不同的数据库时用到了反射技术,只需要调用DLL类型的程序集,每次访问都将缓存起来,减轻服务器的压力。
第三章系统分析
3.1功能需求
Ø能够实现文章(包括分类新闻)的发布,并实现查询、修改、删除等功能;
Ø能够对管理员用户的添加,删除,修改功能;
Ø能够入库的新闻进行查询、修改、删除功能;
Ø对新闻类别,添加分类,进行查询、修改、删除等功能;
Ø能够添加采集项目,设置采集参数,并能修改和添加;
Ø能够进行列表页链接参数的修改、添加、删除等;
Ø设置不同的管理和操作权限,并且分配给用户。
3.2性能需求
Ø时间特性
一般操作的响应时间应在1-2秒内,对软磁盘响应时间也应在可接受的时间内完成。
Ø灵活性
当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
3.3运行需求
Ø用户界面
使用Browser-Server架构,在客户端不需要安装专门的程序,用户使用时就像在浏览网页一般,非常容易上手。
Ø硬件接口
支持一般奔腾133,16兆以上内存的pc机。
Ø软件接口
运行在MicrosoftWindows系列平台上
Ø故障处理
在开发阶段可以随时修改数据库里的相应内容。
3.4数据流图
管理员登录系统之后,首页进入每个页面操作之前都会判断有没有想应的权限,然后可以进行六大栏目的管理,分别是采集管理,入库管理,用户管理,新闻挂历,类别管理,权限管理。
核心部分是采集管理,管理员首先添加采集项目,设置站点,采集列表页地址,然后进行采集,采集完成之后进入入库管理栏目,审核相关采集的新闻,然后选择是否删除和添加入库。
入库完成之后就进入了新闻管理栏目,可以对新闻进行更新,删除操作。
类别管理是管理对新闻进行分类,比如有体育新闻,娱乐新闻等类别的添加和删除,修改操作。
用户管理是添加删除,修改用户操作。
添加用户后要进行权限的分配,进入权限管理栏目,可以对用户进行权限赋值操作。
图3-1总体数据流图
Chart3-1WholeDFD
3.5用例图
3.5.1类别管理用例
管理员输入账号密码之后登陆系统,根据权限可以进行查看添加删除,修改类别的操作。
图3-2新闻类别,新闻管理用例图
Chart3-2Class、News
3.5.2用户管理用例
系统用户登录后判断是否有查看用户账号和密码的权限,如有可以进行查看,但是添加删除权限也是要判断的。
普通用户只能查看个人账号密码,而超级管理员才具备查看全部,添加删除和修改的权限。
图3-3管理员管理用例图
Chart3-3Userillustration
3.5.3入库管理用例
系统用户登录之后,判断是否有相应操作权限,可以对入库的新闻进行入库操作,入库之前可以删除新闻,入库之后会清除入库新闻表。
图3-4入库管理用例图
Chart3-4importdataBaseillustration
3.5.4采集管理用例
系统用户登录之后,首先判断权限,然后根据拥有的权限可以进行添加采集站点,添加采集列表,添加采集链接地址,编辑列表,编辑站点,采集测试,删除采集项目操作。
图3-5新闻采集管理用例图
Chart3-5collectillustration
3.5.5权限管理用例
普通管理员只有查看相应权限,而超级管理员可以修改系统用户的权限值。
图3-6权限管理用例图
Chart3-6Roleillustration
3.6数据字典
在数据流图的基础上,定义数据字典。
数据字典是关于数据库中数据的描述,它的作用是在软件分析和设计过程中为有关人员提供关于数据描述信息的查询,以保证数据的一致性。
下面举例说明数据字典的定义。
名字:
新闻
别名:
无
描述:
定义新闻的相关内容,可唯一地确定一次新闻记录
定义:
新闻=新闻ID+文章名称+文章内容+文章发布者+文章发布时间+文章分类+文章来源+关键字+文章图片+简介++是否有图片+静态标签+添加时间
位置:
存储于新闻信息表,输出到新闻编辑
名字:
新闻分类
别名:
无
描述:
定义新闻的具体分类
定义:
类别=分类ID+分类名称+父类ID+显示顺序
位置:
分类信息表
名字:
采集项目
别名:
无
描述:
定义有关采集的相关信息
定义:
采集项目=ID+类别ID+采集名称+网站地址+网站名称+网页编码+项目标记+列表页地址+列表页开始标记+产列表页结束标记+链接开始+链接结束+标题开始+标题结束+关键字开始+关键字结束+日期正则+来源正则+内容开始+内容结束+下一页开始+下一页结束+下一页正则+过滤标记+是否保存图片+排序Id+采集状态
位置:
存储于数据库采集项目表,输出到采集项目编辑
名字:
用户
别名:
无
描述:
定义用户信息
定义:
用户=用户ID+账号+密码
位置:
用户信息表
名字:
用户权限表
别名:
无
描述:
定义用户的权限
定义:
用户权限=权限ID+用户ID+权限值
位置:
权限表,输出到权限编辑
名字:
待审核入库新闻表
别名:
无
描述:
定义新闻的信息
定义:
入库新闻=新闻信息表的定义
位置:
待审核入库新闻表
3.7概念结构设计
3.7.1实体图
图3-7管理用户实体图图3-8用户权限实体图
Chart3-7EntitychartofuserChart3-8En
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 新闻 采集 系统