您現在的位置: 网站首頁 / seo優化 / 正文

搜索引擎工作過程與seo

作者: admin 发布: 2015-11-1 22:41:15 分类: seo優化 閱讀: 次 查看評論

  搜索引擎的工作的過程非常複雜,而簡單的講搜索引擎的工作過程大體可以分成三個階段。

  爬行和抓取:搜索引擎蜘蛛通過跟蹤鏈接訪問頁面,獲取頁面HTML代碼存入數據庫。

  預處理:搜索贏球對抓取來的頁面數據文字進行文字提取、中文分詞、索引等處理,以備排名程序調用。

  排名:用戶輸入關鍵字後,排名調用索引庫數據,計算相關性,然後按一定格式生成搜索結果頁面。

  爬行和抓取

  爬行和抓取是搜索引擎工作的第一步,完成數據收集任務。

  蜘蛛

  搜索引擎用來爬行和訪問頁面的程序被稱爲蜘蛛(spider),也稱爲機器人(bot)。

  蜘蛛代理名稱:

  百度蜘蛛:Baiduspider+(+http://www.baidu.com/search/spider.htm) ·

  雅虎中国蜘蛛:Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html) ·

  英文雅虎蜘蛛:Mozilla/5.0 (compatible; Yahoo! Slurp/3.0; http://help.yahoo.com/help/us/ysearch/slurp)

  Google 蜘蛛:Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ·

  微软 Bing 蜘蛛:msnbot/1.1 (+http://search.msn.com/msnbot.htm)·

  搜狗蜘蛛: Sogou+web+robot+(+http://www.sogou.com/docs/help/webmasters.htm#07) ·

  搜搜蜘蛛:Sosospider+(+http://help.soso.com/webspider.htm) ·

  有道蜘蛛:Mozilla/5.0 (compatible; YodaoBot/1.0; http://www.yodao.com/help/webmaster/spider/; )

  跟蹤鏈接

  爲了抓取網上盡量多的頁面,搜索引擎蜘蛛會跟蹤頁面上的鏈接,從一個頁面爬到下一個頁面,就好像蜘蛛在蜘蛛網上爬行那樣,這也就是搜索引擎蜘蛛這個名稱的由來。最簡單的爬行遍曆策略分爲兩種,一是深度優先,二是廣度優先。

  深度優先搜索

  深度優先搜索就是在搜索树的每一层始终先只扩展一个子节点,不断地向纵深前进直到不能再前进(到达叶子节点或受到深度限制)时,才从当前节点返回到上一级节点,沿另一方向又继续前进。这种方法的搜索树是从树根开始一枝一枝逐渐形成的。

  深度優先搜索亦称为纵向搜索。由于一个有解的问题树可能含有无穷分枝,深度優先搜索如果误入无穷分枝(即深度无限),则不可能找到目标节点。所以,深度優先搜索策略是不完备的。另外,应用此策略得到的解不一定是最佳解(最短路径)。

  廣度優先搜索

  在深度優先搜索算法中,是深度越大的结点越先得到扩展。如果在搜索中把算法改为按结点的层次进行搜索, 本层的结点没有搜索处理完时,不能对下层结点进行处理,即深度越小的结点越先得到扩展,也就是说先产生 的结点先得以扩展处理,这种搜索算法称为廣度優先搜索法。

  在深度優先搜索算法中,是深度越大的结点越先得到扩展。如果在搜索中把算法改为按结点的层次进行搜索, 本层的结点没有搜索处理完时,不能对下层结点进行处理,即深度越小的结点越先得到扩展,也就是说先产生 的结点先得以扩展处理,这种搜索算法称为廣度優先搜索法。

  吸引蜘蛛

  哪些頁面被認爲比較重要呢?有幾方面影響因素:

  · 网站和页面权重。质量高、资格老的网站被认为权重比较高,这种网站上的页面被爬行的深度也会比较高,所以会有更多内页被收录。

  · 页面更新度。蜘蛛每次爬行都会把页面数据存储起来。如果第二次爬行发现页面与第一次收录的完全一样,说明页面没有更新,蜘蛛也就没有必要经常抓取。如果页面内容经常更新,蜘蛛就会更加频繁地访问这种页面,页面上出现的新链接,也自然会被蜘蛛更快跟踪,抓取新页面。

  · 导入链接。无论是外部链接还是同一个网站的内部链接,要被蜘蛛抓取就必须有导入链接进入页面,否则蜘蛛根本没有机会知道页面的存在。高质量的导入链接也经常使页面上的导出链接被爬行深度增加。一般来说网站上权重最高的是首頁,大部分外部链接是指向首頁,蜘蛛访问最频繁的也是首頁。离首頁点击距离越近,页面权重越高,被蜘蛛爬行的机会也越大。

  地址庫

  为了避免重复爬行和抓取网址,搜索引擎会建立一个地址庫,记录已经被发现还没有抓取的页面,以及已经被抓取的页面。地址庫中的uRL有几个来源:

  (1)人工錄入的種子網站。

  (2)蜘蛛抓取页面后,从HTML中解析出新的链接uRL,与地址庫中的数据进行对比,如果是地址庫中没有的网址,就存入待访问地址庫。

  (3)站長通過搜索引擎網頁提交表格提交進來的網址。

  蜘蛛按重要性从待访问地址庫中提取uRL,访问并抓取页面,然后把这个uRL从待访问地址庫中删除,放进已访问地址庫中。

  大部分主流搜索引擎都提供一个表格,让站长提交网址。不过这些提交来的网址都只是存入地址庫而已,是否收录还要看页面重要性如何。搜索引擎所收录的绝大部分页面是蜘蛛自己跟蹤鏈接得到的。可以说提交页面基本t是毫无用处的,搜索引擎更喜欢自己沿着链接发现新页面。

  文件存儲搜索引擎蜘蛛抓取的數據存入原始頁面數據庫。其中的頁面數據與用戶浏覽器得到的HTML是完全一樣的。每個uRI,都有一個獨特的文件編號。

  爬行時的複制內容檢測

  檢測並刪除複制內容通常是在下面介紹的預處理過程中進行的,但現在的蜘蛛在爬行和抓取文件時也會進行定程度的複制內容檢測。遇到權重很低的網站上大量轉載或抄襲內容時,很可能不再繼續爬行。這也就是有的站長在日志文件中發現了蜘蛛,但頁面從來沒有被真正收錄過的原因。

  預處理

  在一些SEO材料中,“預處理”也被简称为“索引”,因为索引是預處理最主要的步骤。

  搜索引擎蜘蛛抓取的原始页面,并不能直接用于查询排名处理。搜索引擎数据库中的页面数都在数万亿级别以上,用户输入搜索词后,靠排名程序实时对这么多页面分析相关性,计算量太大,不可能在一两秒内返回排名结果。因此抓取来的页面必须经过預處理,为最后的查询排名做好准备。

  和爬行抓取一样,預處理也是在后台提前完成的,用户搜索时感觉不到这个过程。

  1.提取文字

  现在的搜索引擎还是以文字内容为基础。蜘蛛抓取到的页面中的HTML代码,除了用户在浏览器上可以看到的可见文字外,还包含了大量的HTML格式标签、 JavaScript程序等无法用于排名的内容。搜索引擎預處理首先要做的就是从HTML文件中去除标签、程序,提取出可以用于排名处理的网页面文字内 容。

  今天愚人節哈

  除去HTML代碼後,剩下的用于排名的文字只是這一行:

  今天愚人節哈

  除了可見文字,搜索引擎也會提取出一些特殊的包含文字信息的代碼,如Meta標簽中的文字、圖片替代文字、Flash文件的替代文字、鏈接錨文字等。

  2.中文分詞

  分词是中文搜索引擎特有的步骤。搜索引擎存储和处理页面及用户搜索都是以词为基础的。英文等语言单词与单词之间有空格分隔,搜索引擎索引程序可以直接把句子 划分为单词的集合。而中文词与词之间没有任何分隔符,一个句子中的所有字和词都是连在一起的。搜索引擎必须首先分辨哪几个字组成一个词,哪些字本身就是一 个词。比如“减肥方法”将被分词为“减肥”和“方法”两个词。

  中文分詞方法基本上有兩種,一種是基于詞典匹配,另一種是基于統計。

  基于詞典匹配的方法是指,將待分析的一段漢字與一個事先造好的詞典中的詞條進行匹配,在待分析漢字串中掃描到詞典中已有的詞條則匹配成功,或者說切分出一個單詞。

  按照掃描方向,基于詞典的匹配法可以分爲正向匹配和逆向匹配。按照匹配長度優先級的不同,又可以分爲最大匹配和最小匹配。將掃描方向和長度優先混合,又可以産生正向最大匹配、逆向最大匹配等不同方法。

  詞典匹配方法計算簡單,其准確度在很大程度上取決于詞典的完整性和更新情況。

  基于統計的分詞方法指的是分析大量文字樣本,計算出字與字相鄰出現的統計概率,幾個字相鄰出現越多,就越可能形成一個單詞。基于統計的方法的優勢是對新出現的詞反應更快速,也有利于消除歧義。

  基于詞典匹配和基于統計的分詞方法各有優劣,實際使用中的分詞系統都是混合使用兩種方法的,快速高效,又能識別生詞、新詞,消除歧義。

  中文分詞的准確性往往影響搜索引擎排名的相關性。比如在百度搜索“搜索引擎優化”,從快照中可以看到,百度把“搜索引擎優化”這六個字當成一個詞。

  而在Google搜索同樣的詞,快照顯示Google將其分切爲“搜索引擎”和“優化”兩個詞。顯然百度切分得更爲合理,搜索引擎優化是一個完整的概念。Google分詞時傾向于更爲細碎。

  这种分词上的不同很可能是一些关键词排名在不同搜索引擎有不同表现的原因之一。比如百度更喜欢将搜索词完整匹配地出现在页面上,也就是说搜索“够戏博客” 时,这四个字连续完整出现更容易在百度获得好的排名。Google就与此不同,不太要求完整匹配。一些页面出现“够戏”和“博客”两个词,但不必完整匹配 地出现,“够戏”出现在前面,“博客”出现在页面的其他地方,这样的页面在Google搜索“够戏博客”时,也可以获得不错的排名。

  搜索引擎对页面的分词取决于词库的规模、准确性和分词算法的好坏,而不是取决于页面本身如何,所以SEO人员对分词所能做的很少。唯一能做的是在页面上用某种形 式提示搜索引擎,某几个字应该被当做一个词处理,尤其是可能产生歧义的时候,比如在页面标题、h1标签及黑体中出现关键词。如果页面是关于“和服”的内 容,那么可以把“和服”这两个字特意标为黑体。如果页面是关于“化妆和服装”,可以把“服装”两个字标为黑体。这样,搜索引擎对页面进行分析时就知道标为 黑体的应该是一个词。

  3.去停止詞

  无论是英文还是中文,页面内容中都会有一些出现频率很 高,却对内容没有任何影响的词,如“的”、“地”、“得”之类的助词,“啊”、“哈”、“呀”之类的感叹词,“从而”、“以”、“却”之类的副词或介词。 这些词被称为停止词,因为它们对页面的主要意思没什么影响。英文中的常见停止词有the,a,an,to,of等。

  搜索引擎在索引頁面之前會去掉這些停止詞,使索引數據主題更爲突出,減少無謂的計算量。

  4.消除噪聲

  绝 大部分页面上还有一部分内容对页面主题也没有什么贡献,比如版权声明文字、导航条、广告等。以常见的博客导航为例,几乎每个博客页面上都会出现文章分类、 历史存档等导航内容,但是这些页面本身与“分类”、“历史”这些词都没有任何关系。用户搜索“历史”、“分类”这些关键词时仅仅因为页面上有这些词出现而 返回博客帖子是毫无意义的,完全不相关。所以这些区块都属于噪声,对页面主题只能起到分散作用。

  搜索引擎需要識別並消除這些噪聲,排名時不使用噪聲內容。消噪的基本方法是根據HTML標簽對頁面分塊,區分出頁頭、導航、正文、頁腳、廣告等區域,在網站上大量重複出現的區塊往往屬于噪聲。對頁面進行消噪後,剩下的才是頁面主體內容。

  5.去重

  搜索引擎還需要對頁面進行去重處理。

  同 一篇文章经常会重复出现在不同网站及同一个网站的不同网址上,搜索引擎并不喜欢这种重复性的内容。用户搜索时,如果在前两页看到的都是来自不同网站的同一 篇文章,用户体验就太差了,虽然都是内容相关的。搜索引擎希望只返回相同文章中的一篇,所以在进行索引前还需要识别和删除重复内容,这个过程就称为“去 重”。

  去重的基本方法是对页面特征关键词计算指纹,也就是说从页面主体内容中选取最有代表性的一部分关键词(经常是出现频率最高的关键 词),然后计算这些关键词的数字指纹。这里的关键词选取是在分词、去停止词、消噪之后。实验表明,通常选取10个特征关键词就可以达到比较高的计算准确 性,再选取更多词对去重准确性提高的贡献也就不大了。

  典型的指紋計算方法如MD5算法(信息摘要算法第五版)。這類指紋算法的特點是,輸入(特征關鍵詞)有任何微小的變化,都會導致計算出的指紋有很大差距。

  了 解了搜索引擎的去重算法,SEO人员就应该知道简单地增加“的”、“地”、“得”、调换段落顺序这种所谓伪原创,并不能逃过搜索引擎的去重算法,因为这样 的操作无法改变文章的特征关键词。而且搜索引擎的去重算法很可能不止于页面级别,而是进行到段落级别,混合不同文章、交叉调换段落顺序也不能使转载和抄袭 变成原创。

  6.正向索引

  正向索引也可以簡稱爲索引。

  经过文字提取、分词、 消噪、去重后,搜索引擎得到的就是独特的、能反映页面主体内容的、以词为单位的内容。接下来搜索引擎索引程序就可以提取关键词,按照分词程序划分好的词, 把页面转换为一个关键词组成的集合,同时记录每一个关键词在页面上的出现频率、出现次数、格式(如出现在标题标签、黑体、H标签、锚文字等)、位置(如页 面第一段文字等)。这样,每一个页面都可以记录为一串关键词集合,其中每个关键词的词频、格式、位置等权重信息也都记录在案。

  搜索引擎索引程序將頁面及關鍵詞形成詞表結構存儲進索引庫。簡化的索引詞表形式如表2-1所示。

  每個文件都對應一個文件ID,文件內容被表示爲一串關鍵詞的集合。實際上在搜索引擎索引庫中,關鍵詞也已經轉換爲關鍵詞ID.這樣的數據結構就稱爲正向索引。

  7.倒排索引

  正向索引還不能直接用于排名。假設用戶搜索關鍵詞2,如果只存在正向索引,排名程序需要掃描所有索引庫中的文件,找出包含關鍵詞2的文件,再進行相關性計算。這樣的計算量無法滿足實時返回排名結果的要求。

  所以搜索引擎會將正向索引數據庫重新構造爲倒排索引,把文件對應到關鍵詞的映射轉換爲關鍵詞到文件的映射,如表2-2所示。

  在倒排索引中關鍵詞是主鍵,每個關鍵詞都對應著一系列文件,這些文件中都出現了這個關鍵詞。這樣當用戶搜索某個關鍵詞時,排序程序在倒排索引中定位到這個關鍵詞,就可以馬上找出所有包含這個關鍵詞的文件。

  8.鏈接關系計算

  链接关系计算也是預處理中很重要的一部分。现在所有的主流搜索引擎排名因素中都包含网页之间的链接流动信息。搜索引擎在抓取页面内容后,必须事前计算出:页 面上有哪些链接指向哪些其他页面,每个页面有哪些导入链接,链接使用了什么锚文字,这些复杂的链接指向关系形成了网站和页面的链接权重。

  Google PR值就是这种链接关系的最主要体现之一。其他搜索引擎也都进行类似计算,虽然它们并不称为PR.

  由于頁面和鏈接數量巨大,網上的鏈接關系又時時處在更新中,因此鏈接關系及PR的計算要耗費很長時間。關于PR和鏈接分析,後面還有專門的章節介紹。

  9.特殊文件處理

  除 了HTML文件外,搜索引擎通常还能抓取和索引以文字为基础的多种文件类型,如PDF、Word、WPS、XLS、PPT、TXT文件等。我们在搜索结果 中也经常会看到这些文件类型。但目前的搜索引擎还不能处理图片、视频、Flash这类非文字内容,也不能执行脚本和程序。

  雖然搜索引擎在識別圖片及從Flash中提取文字內容方面有些進步,不過距離直接靠讀取圖片、視頻、Flash內容返回結果的目標還很遠。對圖片、視頻內容的排名還往往是依據與之相關的文字內容,詳細情況可以參考後面的整合搜索部分。

  排名

  经过搜索引擎蜘蛛抓取的界面,搜索引擎程序 计算得到倒排索引后,收索引擎就准备好可以随时处理用户搜索了。用户在搜索框填入关键字后,排名程序调用索引库数据,计算排名显示给客户,排名过程是与客户直接互动的。

  作者:佚名

  來源:SEO搜尋引擎優化 - SEO自學網 轉載注明出處!

? 上一篇下一篇 ?   本文關鍵詞: seo  搜索引擎原理  

評論列表:

站長SEO學院
第一節:百度搜索引擎工作原理
第二節:建設對搜索引擎友好的站點
第三節:如何進行網站內容建設
第四節:整體優化、結構優化、網頁優化
第五節:移動搜索-明確移動搜索優化標准
百度SEO資料文檔
百度搜索引擎優化指南2.0
百度移動搜索優化指南2.0
網站分析白皮書(站長版)
移動站點該如何優化
建設對百度友好的站點
百度搜索引擎網頁質量白皮書
石榴算法-綠蘿算法-冰桶算法
新搜索時代下的優化策略
更多百度SEO資料文檔
站長推薦
DIV+CSS布局實例教程-Web標准
网站SEO優化常见问题汇总
SEO優化推广方案该如何写
SEO優化方案步骤
影響網站關鍵詞排名因素總結
影響谷歌搜索引擎排名的因素調查
手機移動端站點適配優化
最近發表