【asp源码栏目提醒】:网学会员在asp源码频道为大家收集整理了“基于asp的搜索引擎开发—计算机论文 - 综合课件“提供大家参考,希望对大家有所帮助!
毕业设计论文 基于
ASP的搜索引擎的开发 论文作者姓名 申请学位专业 申请学位类别 指导教师姓名职称 论文提交日期 第 1 页 共 21页 基于
ASP的搜索引擎的开发 摘 要 随着互联网和宽带上网的普及搜索引擎在中国异军突起并日益渗透到人们的日常生活中。
在互联网普及之前人们查阅资料首先想到的是拥有大量书籍资料的图书馆但是今天很多人都会选择一种更方便、快捷、全面、准确的查阅方式—互联网。
而帮助我们在整个互联网上快速地查找到目标信息的就是越来越被重视的搜索引擎。
本文通过分析国内外搜索引擎的发展现状提出了一种利用
ASP技术实现一个B/S体系结构的搜索引擎系统的方案以期达到功能强大操作简单通用性强可以满足用户对信息搜索需要的搜索引擎系统。
文中着重论述了该系统的数据流程、功能实现与代码设计、后台管理等并对相关技术作了详细的介绍。
论文在撰写过程中力求将理论与系统应用相结合对各种理论进行阐述的同时配合系统从实际应用和操作技巧上加以说明希望能够更充分地体现这些知识与技术在系统中的应用与实现。
关键词
ASP模糊查询关键字搜索引擎 Development of Search Engine Based on
ASP Abstract With the popularization of the Internet and surfing the Net with broadband search engine likes a dark horse in China and permeate through daily life day by day. Before this when people consult materials the first thought is the library that has a large number of books .But now more and more people will choose Internet to search for information .It’s more convenient fast comprehensive and accurate for searching information. The search engine that helps us in the whole Internet to quickly identify target information is played more and more attention to. In order to achieve the formidable function simply operating stronger versatility and satisfy the users to the information search need This paper gives a plan that realizes a systematic scheme of search engine of B/S system structure through analyzing the current development of search engine in domestic and international systematic with the technology of
ASP. This thesis mainly describes the data procedure of this system functional realization and code design back-stage management etc. emphatically in the article. It has done more detailed introduction to relevant technology. The paper makes every effort to use the theory and practice and combine together in the course of writing the cooperation system is explained from practical application and operation skill while explaining various kinds of theories hope to more fully reflect the knowledge and application in this system of technology and realize. Key words:
ASP fuzzy query keyword search engine 目 录 论文总页数21页 1引言 1 1.1课题背景 ............................................................... 1 1.2搜索引擎的发展方向 ..................................................... 1 2系统开发技术分析 2 2.1系统开发环境 ........................................................... 2 2.2 IIS简介 ............................................................... 2 2.3 SQL SERVER 2000简介 .................................................... 2 2.4
ASP简介 ............................................................... 2 3概要设计 3 3.1需求分析 ............................................................... 3 3.2数据库设计 ............................................................. 3 3.2.1分类目录数据库表 ................................................... 3 3.2.2网站登录信息数据库 ................................................. 4 3.2.3管理员数据库表 ..................................................... 4 3.2.4关键字记录数据库表 ................................................. 5 3.3系统设计结构图 ......................................................... 5 4系统前台模块设计 6 4.1网站搜索模块的实现 ..................................................... 6 4.1.1 功能描述 ........................................................... 6 4.1.2 流程图 ............................................................. 6 4.1.3 界面设计 ........................................................... 6 4.1.4 工作流程和代码设计 ................................................. 7 4.2 分类目录模块的实现 ..................................................... 8 4.2.1 功能描述 ........................................................... 8 4.2.2 工作流程和代码设计 ................................................. 8 4.3网站登录模块的实现 .................................................... 10 4.3.1 功能描述 .......................................................... 10 4.3.2 数据流程图 ........................................................ 10 4.3.3 工作流程 .......................................................... 11 4.4 网站修改模块 .......................................................... 12 4.4.1 功能描述 .......................................................... 12 4.4.2 工作流程图 ........................................................ 12 4.4.3 界面设计 .......................................................... 13 4.4.4 工作流程和代码设计 ................................................ 14 5系统后台模块设计 14 5.1 网站管理模块的实现 .................................................... 14 5.1.1 功能描述 .......................................................... 14 5.1.2 工作流程和代码设计 ................................................ 15 5.2 网站审核 .............................................................. 16 5.3 分类管理模块 .......................................................... 16 5.3.1 分类编辑 .......................................................... 16 5.3.2 分类添加 .......................................................... 17 5.3.3 分类删除 .......................................................... 19 6系统性能测试 20 6.1 系统测试环境 .......................................................... 20 6.2 测试结果 .............................................................. 20 结 论 20 参考文献 21 致 谢 21 声 明 22 第 1 页 共 21页 1引言 1.1课题背景 随着因特网的迅猛发展、WEB信息的增加用户要在信息海洋里查找信息就像大海捞针一样搜索引擎技术恰好解决了这一难题。
目前搜索引擎系统可以分类三大类分别是目录式搜索引擎以人工方式或半自动方式搜集信息由编辑员查看信息之后人工形成信息摘要并将信息置于事先确定的分类框架中机器人搜索引擎由一个称为蜘蛛的机器人程序以某种策略自动地在互联网中搜集和发现信息由索引器为搜集到的信息建立索引由检索器根据用户的查询输入检索索引库并将查询结果返回给用户元搜索引擎这类搜索引擎没有自己的数据而是将用户的查询请求同时向多个搜索引擎递交将返回的结果进行重复排除、重新排序等处理后作为自己的结果返回给用户。
1.2搜索引擎的发展方向 搜索引擎已成为一个新的研究、开发领域。
因为它要用到信息检索、人工智能、计算机网络、分布式处理、数据库、数据挖掘、数字图书馆、自然语言处理等多领域的理论和技术所以具有综合性和挑战性。
又由于搜索引擎有大量的用户有很好的经济价值所以引起了世界各国计算机科学界和信息产业界的高度关注目前的研究、开发十分活跃并出现了很多值得注意的方向 1.十分注意提高信息查询结果的精度提高检索的有效性。
用户在搜索引擎上进行信息查询时并不十分关注返回结果的多少而是看结果是否和自己的需求吻合。
2.基于智能代理的信息过滤和个性化服务。
信息智能代理是另外一种利用互联网信息的机制。
它使用自动获得的领域模型如Web知识、信息处理、与用户兴趣相关的信息资源、领域组织结构、用户模型如用户背景、兴趣、行为、风格知识进行信息搜集、索引、过滤包括兴趣过滤和不良信息过滤并自动地将用户感兴趣的、对用户有用的信息提交给用户。
3.采用分布式体系结构提高系统规模和性能。
搜索引擎的实现可以采用集中式体系结构和分布式体系结构两种方法各有千秋。
但当系统规模到达一定程度如网页数达到亿级时必然要采用某种分布式方法以提高系统性能。
4.重视交叉语言检索的研究和开发。
交叉语言信息检索是指用户用母语提交查询搜索引擎在多种语言的数据库中进行信息检索返回能够回答用户问题的所有语言的文档。
如果再加上机器翻译返回结果可以用母语显示。
该技术目前还处于初步研究阶段主要的困难在于语言之间在表达方式和语义对应上的不确 第 2 页 共 21页 定性。
2系统开发技术分析 通过基于Internet互联网的动态WEB数据库技术可以解决远程的数据传输与读取远程的客户终端可以通过WEB页面提交请求查询远端的数据服务器上的信息同时还可以向远端数据服务器的数据库中存储信息以实现信息的共享同时利用Internet技术可以降低软件的开发和部署成本只要在服务器端安装WEB应用就可以使每个客户端都能浏览使用。
2.1系统开发环境 本搜索引擎系统是一个B/S结构的系统它的发布需要有WEB服务器的支持且需要数据库系统来方便的对系统数据进行存储查询修改删除及时更新系统信息同时需要一种简单方便的编程工具可以与数据库进行交互。
鉴于上述需求我选择IIS 5.0SQL Server2000
ASP作为我的开发环境。
2.2 IIS简介 系统设计IIS是Internet信息服务Internet Information Server的缩写它是一种Web服务主要包括WWW服务器、FTP服务器等使得在Intranet局域网或Internet因特网上发布信息成了一件很容易的事。
WWW服务提供维护网站和网页并回复基于浏览器的请求。
有了WWW服务和它内置的功能通过Internet信息服务器可以创建各种各样的Internet应用程序加上其内置的对数据库连接的支持IIS的功能就更强大。
SQL数据库信息或其他任何符合ODBC的数据库信息都能在Internet/Intranet上灵活应用。
2.3 SQL SERVER 2000简介 SQL Server 2000具有构成最大的Web站点的数据存储组件所需的可伸缩性、可用性和安全功能。
它支持English Query和Microsoft搜索服务等功能在Web应用程序中包含了用户友好的查询和强大的搜索功能。
同一个数据库引擎可以在不同的平台上使用SQL Server 2000企业版支持联合服务器、索引视图和大型内存支持等功能使其得以升级到最大Web站点所需的性能级别。
SQL Server 2000关系数据库引擎支持当今苛刻的数据处理环境所需的功能同时将管理上千个并发修改数据库的用户的开销减到最小。
SQL Server 2000中包括一系列管理和开发工具这些工具可改进在多个站点上安装、部署、管理和使用SQL Server的过程。
2.4
ASP简介
ASP全称为Active Server Pages即动态服务器页面它是一套微软开发 第 3 页 共 21页 的服务器端脚本环境
ASP内含于IIS 3.0 以上版本中通过
ASP我们可以结合HTML网页、
ASP指令建立动态、交互且高效的Web服务器应用程序。
ASP脚本在服务器端解释执行结果自动生成符合HTML语言的主页去响应用户的请求。
ASP已成为目前应用最广泛的动态网页开发工具同时应用
ASP进行网络化的信息管理系统也逐步得到推广。
ASP本身并不是一种脚本语言它只是提供了一种使镶嵌在HTML页面中的脚本程序得以运行的环境。
ASP程序其实是以扩展名为.
asp的纯文本形式存在于Web服务器上的可以用任何文本编辑器打开它。
ASP程序中可以包含纯文本、HTML标记以及脚本命令。
用户只需将.
asp程序放在Web服务器的虚拟目录下该目录必须要有可执行权限就可以通过WWW的方式访问
ASP程序了。
3概要设计 3.1需求分析 随着互联网信息的增长人们对信息资料的查阅已不满足现有的书籍资料网上搜索信息资料扮演着越来越重要的角色。
本系统模块设计目标是采用后台数据信息录入前台动态页面查找的方式来实现对信息的搜索。
本系统充分考虑了系统的可扩展性和搜索引擎特有的查询流程利用
ASP基本知识以及Microsoft SQL Server 2000的基本操作使它具有良好的稳定性并且便于维护。
3.2数据库设计 数据库结构设计几乎所有的WEB项目都要基于数据库这使得数据库的设计在整个项目中举足轻重。
本搜索系统中大部分前台的显示信息都是从数据库中读取所需信息而系统管理员则只需在后台通过修改数据库中的数据即可达到改变前台显示内容的目的所以数据库在本系统中作为中间介质连接前台和后台其重要性不言而喻。
本设计根据系统需求分析选用SQL Server 2000作为该系统的数据库。
数据库取名为database其中包含了系统中所有的数据。
下面对一些关键表作详细说明。
3.2.1分类目录数据库表 分类目录数据库表在数据库中标记的是Sort数据表它记录的是子类信息包括子类名称、父类ID和是否在首页显示。
Sort表的具体结构如表1所示 表1 sort表 字段名称 数据类型 说明 主关键字 第 4 页 共 21页 ID int 编号 Sort varchar 子类名称 Sort-ID int 父类ID Show int 是否在首页显示 3.2.2网站登录信息数据库 网站登录数据信息数据库在数据库中标记的是Web数据表它记录的是网站名称、网站内容简介、网站地址、是否审核、网站关键字、联系人姓名、联系人E-mail、联系人qq号码、联系人地址、联系人邮政编码、网站登录时间、网站访问次数、所属子类名称、子类路径和所属子类ID。
Web表的具体结构如表2所示 表2 web表 字段名称 数据类型 说明 主关键字 ID int 编号 Title varchar 网站名称 Content varchar 网站内容简介 URL varchar 网站地址 Verify char 管理员是否已经确认 Keyword varchar 网站关键字 Name varchar 联系人姓名 Email varchar 联系人E-mail QQ varchar 联系人qq Address varchar 联系人地址 PostCode varchar 联系人邮政编码 Time datetime 网站登录时间 Click int 网站访问次数 Sort varchar 子类名称 Sort_path varchar 子类路径 Sort_ID int 子类ID 3.2.3管理员数据库表 第 5 页 共 21页 管理员数据表即数据表Admin记录的是管理员的登录名和密码。
具体结构如表3所示 表3 Admin表 字段名称 数据类型 说明 主关键字 ID int 编号 UserName varchar 管理员登录名 Password varchar 管理员密码 3.2.4关键字记录数据库表 关键字记录表即Keyword数据表记录关键字信息包括关键字和输入次数具体结构如表4所示 表4 Keyword表 字段名称 数据类型 说明 主关键字 ID int 编号 keyword varchar 关键字 hot int 输入次数 3.3系统设计结构图 系统设计结构如图1所示 基于
ASP的搜索引擎网站搜索分类搜索网站登录网站管理管理员登录 图1 系统功能结构图 第 6 页 共 21页 4系统前台模块设计 4.1网站搜索模块的实现 4.1.1 功能描述 用户访问系统时首先接触到的是首页面index.
asp它提供了到达5个功能模块的超链接默认显示为网站搜索模块。
另外页面还提供一个表单from让用户输入要搜索的关键字当用户输入关键字单击搜索按钮后表单中的数据将被提交到search.
asp文件中处理。
在search.
asp首先读取传递过来的数据然后判断该数据是否为空。
如果不为空。
则将数据分割为多个关键字然后在数据库中查找匹配的记录并在页面上显示。
4.1.2 流程图 在网站搜索模块中数据流程如图2所示 图2 网站搜索数据流程图 4.1.3 界面设计 搜索模块的界面设计如图3所示 数据是否为空 搜索并显示结果 不为空 为空 关键字 第 7 页 共 21页 图3 搜索模块界面 4.1.4 工作流程和代码设计 输入关键字后数据被提交到search.
asp中首先使用Request对象的QueryString方法读取表单传递过来的关键字再判断关键字是否为空若不为空将多个关键字进行处理后分开保存在一维数组中 keyword replacekeywordquotquotquot quot 用空格替换关键词中的字符quotquot keyword replacekeywordquotquotquot quot 用空格替换关键词中的字符quotquot keyword replacekeywordquotquotquot quot 用空格替换关键词中的字符quotquot keyword replacekeywordquotquotquot quot 用空格替换关键词中的中文字符quotquot keyword replacekeywordquotquotquot quot 用空格替换关键词中的英文字符quotquot keywordltrimrtrimkeyword 去掉关键词左边和右边的空格。
函数LTrim 去掉字符串左边空格函数RTrim 去掉字符串右边空格 keywordlistsplitkeyword 将用户输入的关键词用空格分成多个关键词并保存在一维数组keywordlist中 然后在循环写出查询的spl语句 if pathquotquot or sort_pathquot/0/quot then search_sqlquotverify0 and quotampsqlampquot order by click descquot else 第 8 页 共 21页 search_sqlquotsort_path like quot amp sort_path amp quot and verify0 and quotampsqlampquot order by click descquot end if rs.open quotselectidsort_pathsort_idtitlekeywordurlcontentaddresspostcodeverifyclick from web where quotampsearch_sqlconn11 执行查询。
使用html代码显示查询页面的网站搜索部分然后判断是否存在满足条件的记录如果存在则使用showcontent过程显示满足条件的所有记录并将记录中的关键字用红色字体显示。
然后使用showpage过程显示记录的页数信息包括当前页、总页数等。
最后显示查询页面的底部的管理入口并建立到管理员登录的超连接。
4.2 分类目录模块的实现 4.2.1 功能描述 分类目录界面由dir.
asp实现在该页面显示的分类信息包括sort_id0的分类和sort_id1的分类即最上级分类和要求显示在首页上的下级分类。
例如如果把“计算机”作为最上级分类。
“计算机”又分为以下3类软件、硬件和网络。
设置这3个分类也显示在首页上即show1。
这3个分类的下一级分类不在首页上显示。
当单击分类目录首页上的某分类时将进入list.
asp文件在该文件中将详细显示这一分类及其下级分类并显示属于这一分类的所有网站信息。
4.2.2 工作流程和代码设计 单击分类目录首页上的某一分类进入list.
asp文件在该文件中首先使用Request对象的QueryString方法读取sort_id的值并在数据库中查找这一分类的所有上级分类并连接在一起其逐级显示分类的代码如下 localityquot gtgt quotampsort 要在网页上显示的逐级分类如计算机gtgt软件gtgt编程语言 if sort_idltgt0 then sort_id ltgt 0 表示该类存在上级分类 for i1 to 8 8表示在本系统中分类只有8级 set rsconn.executequotselect from sort where idquotampsort_id if rs.eof and rs.bof then 第 9 页 共 21页 else sortrsquotsortquot localityquotgtgt lta hreflist.aspsort_idquotampsort_idampquotgtquotampsortampquotlt/agtquotamplocality sort_idrsquotsort_idquot 上一层分类的id end if rs.close set rs nothing next end if 若该分类还存在下级分类将显示下级分类最后显示属于这一分类的所有网站信息在显示网站信息的代码中用到了两个过程showcontent过程和showpage过程。
Showcontent过程显示所有满足条件的记录。
Showpage过程显示页数信息包括当前页、总页数等其中过程showpage的处理代码如下 Function showpagetotalnumbermaxperpagefilename 定义过程 Dim n If totalnumber Mod maxperpage0 Then totalnumber能够整除maxperpage n totalnumber maxperpage Else .