Java爬虫搜索原理实现
生活随笔
收集整理的這篇文章主要介紹了
Java爬虫搜索原理实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
permike?原文?Java爬蟲搜索原理實現
沒事做,又研究了一下爬蟲搜索,兩三天時間總算是把原理鬧的差不多了,基本實現了爬蟲搜索的原理,本次實現還是倆程序,分別是按廣度優先和深度優先完成的,廣度優先沒啥問題,深度優先請慎用,有極大的概率會造成死循環情況,下面深度優先的測試網站就造成了死循環。。。。好吧,我承認是我人品不太好。。。下面有請代碼君出場~~~~~~~~~~~~~~~
1.廣度優先
?
[java]?view plaincopy上面廣度優先沒啥問題,本人昨天凌晨3點多做的測試,15分鐘左右的時間,這只小爬蟲爬到了30W+的鏈接,能力還是蠻強大的么,順便提一下,白天測試的時候會非常非常的慢,推薦各位測試君在晚上12點以后做測試。。。。。雖然不太人道。。。
?
下面是深度優先的代碼,測試的時候每次都能造成死循環。。。好吧,我承認我沒有人品。。。其實基本方法和廣度優先沒啥區別,我每個頁面爬出來的鏈接只拿第一個去爬下一個頁面,總共爬多少層我懶的木有定義,就是想看看最多能爬到哪。。。然后每次都能悲劇的死循環了。。。我明明也設置了跳出的方法了啊,我有判斷有效鏈接的方式,但是我的判斷并不完善么,跳出方法我寫到了catch中,只要有一個無效鏈接,就可以跳出來了么。。。今天凌晨全都是死循環。。。。無奈了。。。。下面請代碼君上場~~~~~~~~~~
?
[java]?view plaincopy上面這兩篇代碼本身是十分不完善的,時間原因,我基本只實現了最基本的原理,能改動增加的地方還有很多,主要是增加,很多地方都可增加代碼來增強程序的健壯性。。。比如有效鏈接判斷的地方,我們從href標簽中取出來的內容除了我寫的幾條判斷意外還有好多東西都沒有處理掉,這個地方還是能增加很多東西的。。。
?
沒有整理與歸納的知識,一文不值!高度概括與梳理的知識,才是自己真正的知識與技能。 永遠不要讓自己的自由、好奇、充滿創造力的想法被現實的框架所束縛,讓創造力自由成長吧! 多花時間,關心他(她)人,正如別人所關心你的。理想的騰飛與實現,沒有別人的支持與幫助,是萬萬不能的。本文轉自wenglabs博客園博客,原文鏈接:http://www.cnblogs.com/arxive/p/6194372.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的Java爬虫搜索原理实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用 pywin32 操作 excel
- 下一篇: AutoMapper在ABP框架中的使用