搜索引擎工做原理

搜索引擎的工做步驟能夠分爲如下四步:爬行和抓取->創建索引->搜索詞處理->排序html

1. 爬行和抓取web

  搜索引擎派出一個可以在網上發現新網頁並抓文件的程序,這個程序一般稱之爲蜘蛛(Spider)。搜索引擎從已知的數據庫出發,就像正經常使用戶的瀏覽器同樣訪問這些網頁並抓取文件。搜索引擎經過這些爬蟲去爬互聯網上的外鏈,從這個網站爬到另外一個網站,去跟蹤網頁中的連接,訪問更多的網頁,這個過程就叫爬行。這些新的網址會被存入數據庫等待搜索。因此跟蹤網頁連接是搜索引擎蜘蛛(Spider)發現新網址的最基本的方法,因此反向連接成爲搜索引擎優化的最基本因素之一。搜索引擎抓取的頁面文件與用戶瀏覽器獲得的徹底同樣,抓取的文件存入數據庫。算法

  蜘蛛抓取網頁策略1:深度優先數據庫

  什麼是深度優先?簡單的說,就是搜索引擎蜘蛛在一個頁面發現一個鏈接而後順着這個鏈接爬下去,而後在下一個頁面又發現一個鏈接,而後就又爬下去而且所有抓取,這就是深度優先抓取策略。你們看下圖瀏覽器

深度優先

在上圖中就是深度優先的示意圖,咱們假如網頁A在搜索引擎中的權威度是最高的,假如D網頁的權威是最低的,若是說搜索引擎蜘蛛按照深度優先的策略來抓取網頁,那麼就會反過來了,就是D網頁的權威度變爲最高,這就是深度優先!ide

  蜘蛛抓取網頁策略2:寬度優先字體

  寬度優先比較好理解,就是搜索引擎蜘蛛先把整個頁面的連接所有抓取一次,而後在抓取下一個頁面的所有連接。優化

寬度優先

上圖呢,就是寬度優先的示意圖!這其實也就是你們平時所說的扁平化結構,你們或許在某個神祕的角落看到一篇文章,告誡你們,網頁的層度不能太多,若是太多會致使收錄很難,這就是來對付搜索引擎蜘蛛的寬度優先策略,其實就是這個緣由。網站

  蜘蛛抓取網頁策略3:權重優先  搜索引擎

  若是說寬度優先比深度優先好,其實也不是絕對的,只能說是各有各的好處,如今搜索引擎蜘蛛通常都是兩種抓取策略一塊兒用,也就是深度優先+寬度優先,而且在使用這兩種策略抓取的時候,要參照這條鏈接的權重,若是說這條鏈接的權重還不錯,那麼就採用深度優先,若是說這條鏈接的權重很低,那麼就採用寬度優先!

  那麼搜索引擎蜘蛛怎樣知道這條鏈接的權重呢?

  這裏有2個因素:一、層次的多與少;二、這個鏈接的外鏈多少與質量;

  那麼若是層級太多的連接是否是就不會被抓取呢?這也不是絕對的,這裏邊要考慮許多因素,咱們在後邊的進階中會降到邏輯策略,到時候我在詳細的給你們說!

  蜘蛛抓取網頁策略4:重訪抓取

  我想這個比較好理解,就是好比昨天搜索引擎的蜘蛛來抓取了咱們的網頁,而今天咱們在這個網頁又加了新的內容,那麼搜索引擎蜘蛛今天就又來抓取新的內容,這就是重訪抓取!重訪抓取也分爲兩個,以下:

  一、所有重訪

  所謂所有重訪指的是蜘蛛上次抓取的連接,而後在這一個月的某一天,所有從新去訪問抓取一次!

  二、單個重訪

  單個重訪通常都是針對某個頁面更新的頻率比較快比較穩定的頁面,若是說咱們有一個頁面,1個月也不更新一次。

那麼搜索引擎蜘蛛第一天來了你是這個樣子,次日,仍是這個樣子,那麼第三天搜索引擎蜘蛛就不會來了,會隔一段時間在來一次,好比隔1個月在來一次,或者等所有重訪的時候在更新一次。

 

2. 創建索引

  創建索引分兩步:數據分析與數據索引  

  數據分析

  數據分析系統,是處理搜索引擎蜘蛛抓取回來的網頁,那麼數據分析這一塊又分爲了一下幾個:

  一、網頁結構化

  簡單的說,就是把那些html代碼所有刪掉,提取出內容。

  二、消噪

  消噪是什麼意思呢?在網頁結構化中,已經刪掉了html代碼,剩下了文字,那麼消噪指的就是留下網頁的主題內容,刪掉沒用的內容,好比版權!

  三、查重

  查重比較好理解,就是搜索引擎查找重複的網頁與內容,若是找到重複的頁面,就刪除。

  四、分詞

  分詞是神馬東西呢?就是搜索引擎蜘蛛在進行了前面的步驟,而後提取出正文的內容,而後把咱們的內容分紅N個詞語,而後排列出來,存入索引庫!同時也會計算這一個詞在這個頁面出現了多少次。

  五、連接分析

  這一個步驟就是咱們平時所作的作煩躁的工做,搜索引擎會查詢,這個頁面的反向連接有多少,導出連接有多少以及內鏈,而後給這個頁面多少的權重等。

  蜘蛛抓取的頁面文件分解、分析,並以巨大表格的形式存入數據庫,這個過程便是索引(index).在索引數據庫中,網頁文字內容,關鍵詞出現的位置、字體、顏色、加粗、斜體等相關信息都有相應記錄。
 
3. 搜索詞處理
 用戶在搜索引擎界面輸入關鍵詞,單擊「搜索」按鈕後,搜索引擎程序即對搜索進行處理,如中文特有的分詞處理,去除中止詞,判斷是否須要啓動整合搜索,判斷是否有拼寫錯誤或錯別字等狀況。搜索詞的處理必須十分快速。
 
4. 排序
  對搜索詞處理後,搜索引擎程序便開始工做,從索引數據庫中找出全部包含搜索詞的網頁,而且根據排名算法計算出哪些網頁應該排在前面,而後按照必定格式返回到「搜索」頁面。
  谷歌用的是Page Rank算法。
 
參考內容:
  1. http://baike.baidu.com/view/3492159.htm
  2. http://www.chinaz.com/web/2012/0221/236263.shtml
相關文章
相關標籤/搜索