Python網路爬蟲(理論篇)

2022-10-11 16:57:16 字數 2074 閱讀 3909

網路爬蟲由控制節點,爬蟲節點,資源庫構成。

網路爬蟲的控制節點和爬蟲節點的結構關係

網路爬蟲可分為通用網路爬蟲,聚焦網路爬蟲,增量式網路爬蟲,深層網路爬蟲等型別。

聚焦爬蟲執行的流程

搜尋引擎的核心工作流程

通用網路爬蟲的實現原理及過程可以簡要概括如下:

1)獲取初始的url。

2)根據初始的url爬取頁面,並獲得新的url。

3)將新的url放到url佇列中。

4)從url佇列中讀取新的url,並依據新的url爬取網頁,同時從新網頁中獲取url,並重複上述的爬取過程。

5)滿足爬蟲系統設定的停止,停止爬取。

通用網路爬蟲的實現原理及過程

1)對爬取目標的定義和描述。

2)獲取初始的url。

3)根據初始的url爬取頁面,並獲得新的url。

4)從新的url中過濾掉與爬取目標無關的鏈結。

5)將過濾後的鏈結放到url佇列中。

6)從url佇列中,根據搜尋演算法,確定url的優先順序,並確定下一步要爬取的url位址。

7)從下一步要爬取的url位址中,讀取新的url,然後依據新的url位址爬取網頁,並重複上述爬取過程。

8)滿足系統中設定的停止條件時,或無法獲取新的url位址時,停止爬行。

聚焦網路爬蟲的實現原理及過程

爬行策略主要有深度優先爬行策略,廣度優先爬行策略,大戰優先策略,反鏈策略,其他爬行策略等。

某**的網頁層次結構示意圖

4)反鏈策略:指的是該網頁被其他網頁指向的次數,這個次數在一定程度上代表著該網頁被其他網頁的推薦次數,優先爬取反鏈數量多的網頁。

除此之外,還有opic策略,partialpagerank策略等。

網頁更新策略主要有使用者體驗策略,歷史資料策略,聚類分析策略等。

1)使用者體驗策略:大部分使用者都只會關注排名靠前的網頁,所以在爬蟲伺服器資源有限的情況下,優先爬取更新排名結果靠前的網頁。

2)歷史資料策略:使用歷史資料策略來確定對網頁更新爬取的週期。

3)聚類分析策略:

在搜尋引擎中,爬蟲爬取了對應的網頁之後,會將網頁儲存到伺服器的原始資料庫中,之後搜尋引擎會對這些網頁進行分析並確定各網頁的重要性,即會影響使用者搜尋的排名結果。

網頁分析演算法:基於使用者行為的網頁分析演算法,基於網路拓撲的網頁分析演算法,基於網頁內容的網頁分析演算法。

依據使用者對這些網頁的訪問行為,對這些網頁進行平價。

依靠網頁的鏈結關係,結構關係,已知網頁或資料等對網頁進行分析的一種演算法。

1)基於網頁粒度的分析演算法

根據網頁之間的鏈結關係對網頁的權重進行計算,並可以依靠這些計算出來的權重,對網頁進行排名。

2)基於網頁塊粒度的分析演算法

也是依靠網頁間鏈結關係進行計算,但是計算規則有所不同,需要對乙個網頁中的外部鏈結劃分層次,不同外部鏈結對於該網頁來說,其重要程度不同。

3)基於**粒度的分析演算法

依據網頁的資料,文字等網頁內容特徵,對網頁進行相應的評價。

在爬蟲對網頁爬取的過程中,爬蟲必然需要訪問對應的網頁,正規的爬蟲一般會告訴對應網頁的**站長其爬蟲身份。**的管理員則可以通過爬蟲告知的身份資訊對爬蟲的身份進行識別,我們稱這個過程為爬蟲的身份識別過程。

python網路爬蟲實戰1 基礎篇

很多資料並沒有存在自家的資料庫中,在大資料時代,很多的資料都放在網路上,以網頁的形式呈現給大家。我們如何將這些沒有固定格式的非結構化資料批量從網路上拷貝下來,並提供給後來者進行資料價值的挖掘,是一件非常有意義的事情。這裡,我們必須借助etl extract,transformation,loadin...

Python爬蟲 理論基礎

其實爬蟲沒有大家想象的那麼複雜,有時候也就是幾行 的事兒,千萬不要把自己嚇倒了。這篇就清晰地講解一下利用python爬蟲的理論基礎。首先說明爬蟲分為三個步驟,也就需要用到三個工具。利用網頁解析器解析需要的url,進而進行匹配。url管理器有三大類。記憶體 以set形式儲存在記憶體中 儲存在關係型資料...

Python爬蟲拓展篇

以上內容,不要求全部掌握,但是掌握的越多,那麼你的重要性就越高 二 關於python面試的四點,你做到就萬事大吉了!因為面試的是python爬蟲崗位,面試官大多數會考察面試者的基礎的python知識,包括但不限於 0 python2.x與python3.x的區別 1 python的裝飾器 2 pyt...