如何爬蟲或蜘蛛在搜索引擎的工作原理搜索引擎中的蜘蛛如何工作?
1
A
回答
0
如何任何蜘蛛在Web上開始它的旅行?通常的起點是大量使用的服務器和非常流行的頁面列表。蜘蛛將從一個受歡迎的網站開始,將其網頁上的文字編入索引,並追蹤該網站中的每個鏈接。通過這種方式,蜘蛛系統迅速開始傳播,遍佈網絡最廣泛使用的部分。
3
具體來說,你至少需要以下一些部分組成:
- 配置:要告訴爬蟲如何,何時何地連接到文件;以及如何連接到底層數據庫/索引系統。
- 連接器:這將創建連接到網頁或磁盤共享或任何東西,真的。
- 內存:抓取工具必須知道已經訪問過的網頁。這通常存儲在索引中,但取決於實現和需求。該內容也用於重複數據刪除和更新驗證目的。
- 解析器/轉換器:需要能夠理解文檔的內容並提取元數據。將提取的數據轉換爲底層數據庫系統可用的格式。
- 索引器:將數據和元數據推送到數據庫/索引系統。
- 調度程序:計劃抓取工具的運行。可能需要同時處理大量運行的爬蟲,並考慮當前正在執行的操作。
- 連接算法:當解析器找到與其他文檔的鏈接時,需要分析何時,如何以及何處必須建立下一個連接。另外,一些索引算法考慮了頁面連接圖,因此可能需要存儲和分類與之相關的信息。
- 策略管理:某些站點要求抓取工具遵守某些策略(例如robots.txt)。
- 安全/用戶管理:爬蟲程序可能需要能夠在某個系統中登錄才能訪問數據。
- 內容編輯/執行:爬蟲可能需要執行某些內容才能訪問內容,比如applets/plugins。
從不同的起點,速度,內存使用和使用大量的線程/進程一起工作時,爬行程序需要高效。 I/O是關鍵。
3
萬維網基本上是一個網絡文檔,圖像,多媒體文件等的連接有向圖。圖的每個節點都是網頁的組成部分,例如,一個網頁由圖像,文本,視頻等,所有這些都鏈接在一起。抓取工具使用廣度優先搜索使用網頁中的鏈接遍歷圖形。
- 爬網程序最初以一個(或多個)種子點開始。
- 它掃描網頁並探索該頁面中的鏈接。
- 該過程一直持續到探索所有圖形爲止(可以使用某些預定義約束來限制搜索深度)。
相關問題
- 1. 如何向搜索引擎蜘蛛提供區域內容?
- 2. 在Django中,爲搜索引擎蜘蛛禁用@login_required
- 3. 哪些搜索引擎蜘蛛執行javascript?
- 4. Ruby網絡蜘蛛和搜索引擎庫
- 5. 機器人引擎名稱爲搜索蜘蛛
- 6. 搜索引擎優化 - 重定向跳計數網站蜘蛛工具
- 7. Bit Torrent搜索引擎如何工作?
- 8. MultiLanguage搜索引擎如何工作
- 9. 搜索引擎蜘蛛能看到我使用jQuery添加的內容嗎?
- 10. 做搜索引擎機器人 - 爬蟲 - 蜘蛛 - 等有他們的JavaScript?
- 11. Scrapy蜘蛛不工作
- 12. 告訴通過PHP重定向與if語句和搜索引擎蜘蛛?
- 13. 蜘蛛和索引器的好語言
- 14. scrapy:蜘蛛中的小蜘蛛?
- 15. 製作蜘蛛restarable
- 16. Nutch,蜘蛛,索引網頁它已經在它的索引?
- 17. Ruby on Rails,如何確定請求是由機器人還是搜索引擎蜘蛛做出的?
- 18. 如何喂蜘蛛蜘蛛爬行內的鏈接?
- 19. enable_star在SPHINX搜索引擎不工作
- 20. 庫MySQLi/PHP搜索引擎不工作
- 21. 使用AJAX搜索引擎在Chrome中搜索搜索引擎
- 22. 如何防止蜘蛛/搜索引擎遵循「報告爲冒犯性內容」鏈接
- 23. php蜘蛛腳本不工作
- 24. Scrapy爬行蜘蛛停止工作
- 25. 如果我通過JavaScript在頁面中添加內容,它將被搜索引擎蜘蛛抓取
- 26. 如何製作「頻繁搜索」引擎?
- 27. 如何製作圖片搜索引擎?
- 28. 如何製作搜索引擎?
- 29. 如果搜索引擎蜘蛛正在敲擊我的網站,我該怎麼辦?
- 30. 如何繪製蜘蛛網
http://en.wikipedia.org/wiki/Web_crawler – SilentGhost 2010-05-05 11:34:55