爬蟲在網絡中爬行的時候,將Web 上的網頁集合看成是一個有向圖,從給定的起始
URL 開始,沿着網頁中的鏈接,按照一定的策略進行。通常用到以下幾種遍歷算法:
1、深度優先算法
該算法是指網絡爬蟲會從選定的一個超鏈接開始,按照一條線路,一個一個鏈接訪
問下去,直到達到這條線路的葉子節點,即不包含任何超鏈接的HTML 文件,處理完這
條線路之後再轉入下一個起始頁,繼續訪問新的起始頁面所包含的鏈接中的一條,直到
到達葉子結點。這個方法有個優點是網絡爬蟲在設計的時候比較容易。
2、廣度優先算法
廣度優先算法是指網絡爬蟲會先抓取起始網頁中包含鏈接的所有網頁,然後再選擇
其中的一個鏈接網頁,繼續抓取在這個網頁中鏈接的所有網頁。這種搜索方法是實現通
用網絡爬蟲的最佳方法,因爲它的特點是易於實現,並且能夠避免陷進一個無窮盡的深
層分支中去,可以讓網絡爬蟲並行處理,從而提高其抓取速度。
3、啓發式搜索算法
源於人工智能,即先通過在線獲得的領域知識評價待訪問鏈接的價值,藉以推斷信
息資源的分佈情況,然後按一定的原則選擇價值最大的鏈接進行下一步的搜索,找到到
達目標節點的最佳路徑,刪除不好節點,保留那些好的節點,該算法主要用於主題爬蟲。
分佈式網絡爬蟲可以看做由多個集中式網絡爬蟲組合而成。分佈式系統中的每個節
點都可以看作一個集中式網絡爬蟲。分佈式爬蟲與集中式爬蟲工作原理基本相同,但前
者需要各個節點協作完成網頁的爬行,從而使得分佈式爬蟲的效率遠遠高於集中式爬
蟲。分佈式爬蟲的系統結構有很多種,工作方式也各不相同。對於典型的分佈式爬蟲系
統,它的每個節點不僅從web 頁面獲得URL,同時也從其它節點接收URL。然後節點
對URL 對應的網頁進行解析,並將不屬於自己爬行範圍的URL 轉發給其它節點。
爬蟲基本原理及概念
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
heritrix中在Prefetcher中取消robots.txt的限制
liuyu1942
2020-02-21 21:03:45
heritrix登陸項目
lzj0327
2020-02-21 20:32:11
以jar包形式啓動heritrix
lzj0327
2020-02-21 20:32:11
heritrix queue 分配策略
iteye_3946
2020-02-21 11:44:30
windows下配置Heritrix1.14.4安裝配置
WX7251
2020-06-27 20:06:11
Heritrix的安裝與配置 (最新版 已測試通過)
面包里的代码
2020-02-26 04:40:05
Heritrix源碼分析(十三) Heritrix的控制中心(大腦)CrawlController(二)
iteye_17257
2020-02-25 21:41:10
heritrix 在Prefetcher中取消robots.txt的限制
高成浩
2020-02-24 23:06:54
heritrix 提高抓取速度
高成浩
2020-02-24 23:06:54
歡迎使用CSDN-markdown編輯器
qq_23377639
2020-02-23 03:42:44
Eclipse下配置heritrix
iteye_17742
2020-02-22 07:47:37
heritrix參考文獻
liuyu1942
2020-02-21 21:03:45
Heritrix各個類說明
hellbaby666
2020-02-21 11:04:31