Python網絡爬蟲基本原理(2)

編程語言 Python 網絡爬蟲 科技 IT技術Java交流 2017-05-23

接上一篇原理

更新策略

互聯網是實時變化的動態性極強

網頁更新的策略主要是

決定何時更新之前已經下載過的頁面

更新策略分以下幾種供參考

Python網絡爬蟲基本原理(2)

Python網絡爬蟲基本原理(2)

分佈式抓取系統結構

取系統需要面對的是整個互聯網上數以億計的網頁

單個抓取 抓程序不可能完成這樣的任務

所以往往需要多個抓取程序一起來處理

一般來說抓取系統往往是一個分佈式的三層結構

如圖

Python網絡爬蟲基本原理(2)

最下一層是分佈在不同地理位置的數據中心

在每個數據中心裡有若干臺抓取服務器

而每臺抓取服務器上可能部署了若干套爬蟲程序

這就構成了一個基本的分佈式抓取系統。

然而對於一個數據中心內的不同抓取服務器

協同工作的方式有幾種:

1.主從式

如圖

Python網絡爬蟲基本原理(2)

有一臺專門的Master服務器來維護待抓取URL隊列

它負責每次將URL分發到不同的Slave服務器

而Slave服務器則負責實際的網頁下載工作

Master服務器除了維護待抓取URL隊列以及分發URL之外,還要負責調解各個Slave服務器的負載情況

以免某些Slave服務器過於清閒或者勞累。

2.對等式

如圖

Python網絡爬蟲基本原理(2)

Python網絡爬蟲基本原理(2)

Python網絡爬蟲基本原理(2)

學習過程中遇到什麼問題或者想獲取學習資源的話,歡迎加入學習交流群

626062078,我們一起學Python!

相關推薦

推薦中...