《电子商务应用》实验指导书-实验3 搜索引擎及搜索引擎优化(SEO)实验_第1页
《电子商务应用》实验指导书-实验3 搜索引擎及搜索引擎优化(SEO)实验_第2页
《电子商务应用》实验指导书-实验3 搜索引擎及搜索引擎优化(SEO)实验_第3页
《电子商务应用》实验指导书-实验3 搜索引擎及搜索引擎优化(SEO)实验_第4页
《电子商务应用》实验指导书-实验3 搜索引擎及搜索引擎优化(SEO)实验_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PAGE PAGE 13电子商务应用实验报告项目名称 搜索引擎及搜索引擎优化(SEO) 专业班级 软件工程1207 学 号 姓 名 实验成绩:优批阅教师:2015年 1月 7 日实验3搜索引擎及SEO实验实验学时: 2 实验地点: 二综X204 实验日期: 2014-12-26 一、实验目的研究并学习几种常见的搜索引擎算法,包括网络蜘蛛爬行策略、中文分词算法、网页正文提取算法、网页去重算法、PageRank和MapReduce算法,了解它们的基本实现原理;运用所学SEO技术对网页进行优化。二、实验内容和方法1. 研究常用的网络蜘蛛爬行策略,如深度优先策略、广度优先策略、网页选择策略、重访策略和

2、并行策略等,了解其实现原理;2. 研究至少两种中文分词算法,了解其实现原理;3. 研究至少两种网页正文提取算法,了解其实现原理;4. 研究至少两种网页去重算法,了解其实现原理;5. 研究Google的PageRank和MapReduce算法,了解它们的实现原理;6. 使用所学的SEO技术,对实验二所设计的网站静态首页实施SEO,在实施过程中需采用如下技术:(1) 网页标题(title)的优化;(2) 选取合适的关键词并对关键词进行优化;(3) 元标签的优化;(4) 网站结构和URL的优化;(5) 创建robots.txt文件,禁止蜘蛛抓取网站后台页面;(6) 网页内部链接的优化;(7) Hea

3、ding标签的优化;(8) 图片优化;(9) 网页减肥技术。7. 使用C+、C#和Java等任意一种编程语言,设计并实现一个简单的网络蜘蛛爬行程序,要求在输入关键词、设置爬行深度和初始网页URL之后能够实现网页搜索,输出包含关键词的网页的URL和网页标题。【注:实验7为补充实验,不要求每个同学都完成,感兴趣者可自行实现该程序,不计入实验报告评分。】三、实验要求1. 研究几种常用的网络蜘蛛爬行策略,填写相应的表格,表格必须填写完整;2. 研究两种中文分词算法,填写相应的表格,表格必须填写完整;3. 研究两种网页正文提取算法,填写相应的表格,表格必须填写完整;4. 研究两种网页去重算法,填写相应的

4、表格,表格必须填写完整;5. 研究PageRank算法和MapReduce算法,填写相应的表格,表格必须填写完整;6. 提供实施SEO之后的网站静态首页界面和HTML代码,尽量多地使用所学SEO技术;7. 严禁大面积拷贝互联网上已有文字资料,尽量用自己的理解来阐述算法原理,必要时可以通过图形来描述算法;8. 使用任意一种编程语言实现一个简单的网络蜘蛛程序,需提供网络蜘蛛程序完整源代码及实际运行结果。四、实验步骤1. 通过使用搜索引擎并查阅相关资料,研究并整理几种常用的网络蜘蛛爬行策略相关资料,填写相应的表格;2. 通过使用搜索引擎并查阅相关资料,研究并整理两种中文分词算法的基本原理,填写相应的

5、表格;3. 通过使用搜索引擎并查阅相关资料,研究并整理两种网页正文提取算法的基本原理,填写相应的表格;4. 通过使用搜索引擎并查阅相关资料,研究并整理两种网页去重算法的基本原理,填写相应的表格;5. 通过使用搜索引擎并查阅相关资料,研究并整理PageRank算法和MapReduce算法的基本原理,填写相应的表格;6. 对实验二所设计的网站静态首页实施SEO;7. 使用任意一种编程语言,设计并实现一个简单的网络蜘蛛爬行程序。五、实验结果1. 研究几种常用的网络蜘蛛爬行策略并填写如下表格:策略名称基本原理参考资料深度优先策略蜘蛛沿着发现的一个链接一直向前搜索,直到再没有链接,就返回从另一条链接向下

6、搜索百度百科&百度文库(链接太长)广度优先策略蜘蛛把一个页面上所有的链接都搜索一遍到这些链接的下一个页面,再顺着第二层爬到第三层,依次往下搜索百度百科&百度文库网页选择策略一个公共标准来区分网页的重要程度,决定蜘蛛抓取哪些网页,其中包含限定访问链接、路径检索、聚焦抓取、抓取深层的网页等方法网络蜘蛛 百度百科重访策略网页动态性很强,在蜘蛛上一次访问到下一次访问之间可能发生一些改变,要检测到这些改变才能保证我们能得到新鲜的资源。重访策略就是一个策略来引导蜘蛛对网页抓取的频率,能够控制在最小的成本下获取最新信息。最常用的成本函数是新鲜度和过时性,蜘蛛的目标就是提高新鲜度,降低过时性。并行策略一个并行

7、蜘蛛是并行运行多个进程的爬虫。它的目标是最大化下载的速度,同时尽量减少并行的开销和下载重复的页面。为了避免下载一个页面两次,蜘蛛系统需要策略来处理蜘蛛运行时新发现的URL,因为同一个URL地址,可能被不同的蜘蛛进程抓到。注:参考资料格式如下:1 developerWorks中国:Java 设计模式. /developerworks/cn/java/design/.2 阎宏. Java与模式. 北京: 电子工业出版社, 2004.3 于满泉, 陈铁睿, 许洪波. 基于分块的网页信息解析器的研究与设计. 计算机应用, 2005, 25(4).2. 研究两种中文分词算法并填写如下表格:算法名称基本原

8、理参考资料基于词典的分词算法按照一定的策略将要分析的内容与一个充分大的机器词库中的词条进行匹配,如果在词库中找到要匹配的字符串就匹配成功。主要方法有正向最大匹配思想MM、逆向最大匹配算法RMM、双向最大匹配法BM、最少切分法、最佳匹配OM、设立切分标志法等。1.正向最大匹配思想:m是词库中最长的字符串的字符数,从左到右把要分词的语句的前m个字作为匹配字段,在词典中进行查找。如果词典中找到匹配的字符串则匹配成功,匹配的字符串作为一个词切分出来。如果词典中找不到,就将带匹配的字符串最后一个字去掉,用剩下的字符串再次进行匹配,直到匹配成功或者剩余字符串长度为0。然后再从这个词的下一个字开始取m个字,

9、进行查找。2.逆向最大匹配算法:匹配方法与正向最大匹配算法基本相同,不同的是是从被处理内容的最后开始扫描取m个字,如果匹配不成功则去掉选取的字符串最前面的一个字。3.双向最大匹配法:将正向最大匹配法与逆向最大匹配法组合。先根据标点对文档进行粗切分,把文档分解成若干个句子,然后再对这些句子用正向最大匹配法和逆向最大匹配法进行扫描切分。如果两种分词方法得到的匹配结果相同,则认为分词正确,否则,按最小集处理。Abstractwind博客.z中文分词算法笔记;CodeMain.中文分词技术;中文分词 百度百科基于统计的分词算法统计文章文中相邻的两个字字同时出现,出现的次数越多就越可能构成一个词。因此字

10、与字相邻出现的概率或频率能较好的反映词的可信度。主要统计模型有N元文法模型和隐马尔科夫模型。N元文法模型:第n个词的出现只与前面N-1个词相关,而与其它任何词都不相关,整句的概率就是各个词出现概率的乘积隐马尔科夫模型:每一个状态的转移只依赖于其之前的那一个状态Likelet的专栏.隐马尔科夫模型攻略;Abstractwind博客.z中文分词算法笔记;3. 研究两种网页正文提取算法并填写如下表格:算法名称基本原理参考资料基于行块分布函数的通用网页正文抽取依据是网页中的正文内容里文字信息会比较集中;方法是将HTML代码中所有标签都去掉,保留空白位置信息,然后以留下来的内容的每一行为起点,向上或者向

11、下再取k行(0k5,)合起来作为一个行块,再把每个行块中的空白符去掉,剩下的文字内容的字数就是该行块的长度。再以行号为x轴,行块长度为y轴,建立坐标系。通过训练集可以发现网页的正文内容所在的行都是坐标系中有最值并且连续的一个区域,而且会包含一个骤升点一个骤降点。所以最后就是计算出这两个点,正文内容就包含在其中。陈鑫. 基于行块分布函数的通用网页正文抽取基于DOM树的网页正文提取根据网页的HTML代码建立Dom树,然后递归遍历Dom树,比较并识别各种非正文信息,包括广告、链接群和非重要节点信息;广告信息移除:需要建立经常更新的广告服务器列表;链接群移除:计算网页包含的链接个数同非链接的词个数的比

12、例;非正文信息移除后,Dom树中剩余的内容就是正文信息,直接从余下的树节点中抽取。游游.浅识网页正文提取陈鑫. 基于行块分布函数的通用网页正文抽取4. 研究两种网页去重算法并填写如下表格:算法名称基本原理参考资料SimHash文档指纹算法如果两个东西相似,就可以用一个hash函数把他们投影到相近的空间的LSH。用到near duplication detection上。1. 将文档转换为特征的集合,每一个特征有一个权重,如假设特征是由词组成的,那词的权重就是词频确定;2. 利用LSH函数把特征向量转换为f位的fingerprint,如:f=64 ;3.在f维的向量V中,分别对每维向量进行加权计

13、算。如果词相应的比特位的二进制数值为1,则用它的权重乘以1,如果词相应的比特位为0,则用权重乘以-1;4.当所有的词都按照上述处理完毕后,总的合并起来。5.最后降维,如果最后向量V中第i维是正数,则将f位的指纹中第i位设置为1,否则为0。刺猬的温驯.SimHash算法;Beta2.网页去重-算法篇;卢松松博客.搜索引擎网页去重算法分析;百度百科.海明距离SpotSig算法对网页内容进行预处理,即通过划分有语义的词串来将文档分成一个词串集,有语义的词串是spot,文档此时就是一个spot signature集,该集合是一个多重集合。根据集合长度将所有文档映射到划分好的分隔中去,这个映射满足集合相

14、似度高的文档映射在同一分隔或相邻分隔中,相似度低的文档映射在不同的分隔中。进行文档相似度比较时,只需比较在同一分隔或相邻分隔中的文档,利用多重集合的 Jaccard相似度公式,将Jaccard相似度大于某个阈值的两篇文档视为相似文档。eric_gcm.去重算法SpotSig算法详解;Beta2.网页去重-算法篇;5. 研究PageRank算法和MapReduce算法并填写如下表格:算法名称基本原理参考资料PageRank给网页设定了1到10的等级来衡量网页的受欢迎程度,等级越高代表网页越受欢迎PageRank是通过一个网页的外链数以及链它的网页的受欢迎程度来计算这个网页的PR值的。简单来说就是

15、A网页的PR值是所有链它的网页自己本身的PR值除以那些网页向外链的数量(除了数量之后也就是那个网页能分给A网页多少重要度了)之后的值的总和。将积分比较高的网页排在前面,表明它比较重要。Guisu的CSDN博客.PageRank算法;Google PageRank百度百科MapReduce是将一个大作业拆分为多个小作业的框架(大作业和小作业应该本质是一样的,只是规模不同),用户需要做的就是决定拆成多少份,以及定义作业本身。Map是映射,对接受的键值对做出设定的操作行为,产生中间键值对。MapReduce框架将中间键值对里键值相同的值传递给ReduceReduce是简化,接受一个键以及相关的一组值

16、,将这组值合并产生一组规模更小的值Fumin的CSDN博客.谷歌技术三宝之“MapReduce”Shekhar Gulati.怎样向妻子解释MapReduce6. 提供通过SEO优化之后的网站首页静态效果图和完整的HTML源代码。网页界面:html代码: 今夕书屋 link rel=stylesheet type=text/css href=jinxi.css 执手挥毫,试描江山,古道人家,篷门始开 .今夕何夕,见此良文 css文件:#top margin-top:-6px; margin-left:190px;p font-weight:bold; color:#606d6e; font-s

17、ize:12px; margin-bottom:5px#h1 font-family=微软雅黑; font-size:19px;#daohang float:left; margin-left:-10px#zhuanti margin-left:185px;#tongzhi margin-left:-8px;#tushu margin-left:173px; margin-top:-25px;六、实验小结这次实验让我学到了很多上课的时候没有学到的东西,这些搜索引擎的搜索策略、正文提取、网页去重、网页排名,老师在上课的时候都会提一下,但是当时并没有多想,也没有去主动了解(学习的积极性还是不够啊),就听名字知道是要做什么事。所以在做实验的时候发现原来这些都会有这么多内容,一个算法要考虑那么多问题,有些还挺复杂,看都看不太懂(我选择的都是我看了之后能懂个大概的算法),还是觉得平时天天用的搜索引擎做起来真的是非常不容易的一件事,但是大家还并不知道,幕后工作人员辛苦了。还有一点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论