關於爬蟲的廣度優先問題

寬度優先的爬取

實踐中,網頁的爬取,一般來說重要的網頁距離入口距離站點很近,2.寬度優先有利於多個爬蟲並行的合作

在這裏插入圖片描述
從上圖我們可以看出寬度優先的爬取順序,是一層一層的過來的那麼,如何來實現

其實不難發現 按照 從 1- 2 -3 - 4- 5-6-7 順序走,在把1爬完之後

緊接着放入 2 跟 3 當 ,2爬完之後 把 4 , 5 放進去 , 爬3 的時候,把 6,7 放進去

在這裏插入圖片描述
整個過程的實現,其實跟 隊列一樣, 當彈出一個的同時,把下面一層的url放進去
這樣就實現了寬度優先的爬取

這個只是處理的思路
crawled = [] #  爬取過的網站的隊列
crawl_queue = [] 等待怕爬去的網站的隊列
while crawl_queue # : 還有待爬取的網站時
	deal_html(url) # 具體的處理過程 在這個過程中,要對網頁爬取到的url進行處理
	#通過跟crawled中的url 進行比較,把未爬取的url 放入帶爬url中
	crawled.append(url)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章