2009-10-28 28 views
0

所有鏈接我忘了名字的情況下網絡蜘蛛會你怎麼叫蜘蛛技術,其中蜘蛛訪問的第一級的所有鏈接,並在第二級

第一次訪問它看到的所有鏈接第一級。 然後訪問它在第二級看到的所有鏈接。 等等...

有此技術名稱....我忘了... ...

反正,這是非常詳盡的,顯然效率低下。有沒有更好的辦法 ?

我記得夏天讀了一篇關於高效地抓取網頁(DSL或類似的東西,我不知道代表什麼)的論文......總之,它討論了「確定哪些URL可能包含相關信息以及哪些網址將被忽略像註冊,新帳戶鏈接..等等「

我沒有讀過它的詳細信息,如果有任何東西響起請發佈一個鏈接。

回答

2

聽起來像'廣度優先搜索',而不是'深度優先搜索'。在第一個例子中,您可以橫向檢查所有選項,可以這麼說,而在後者中,您可以先在每條路徑上儘可能深地鑽取。這是AI術語,不確定它是否與網絡工具設計師流行。無論如何,BFS會消耗大量內存,但通常用於希望儘可能找到最佳結果的情況(以您的方式),儘管DFS可能會使用更少的內存,但可能會錯過更好的解決方案。

如果您只是試圖編目所有鏈接,請使用DFS。如果您嘗試以最淺的鏈接深度查找某個內容,請使用BFS。

+0

打我吧.... – 2009-10-28 09:38:12

1

廣度優先搜索。在圖論中,廣度優先搜索(BFS)是一種搜索策略,當搜索被限制在基本上兩個操作時:(a)訪問和檢查圖的節點; (b)訪問訪問與當前訪問節點相鄰的節點。 BFS從根節點開始並檢查所有相鄰節點。然後,對於這些鄰居節點中的每一個,依次檢查其未訪問的鄰居節點,依此類推。將其與深度優先搜索進行比較。

http://en.wikipedia.org/wiki/Breadth-first_search