1. 程式人生 > >javaweb基於內容的圖片搜尋引擎(5)_問題的分析與後話

javaweb基於內容的圖片搜尋引擎(5)_問題的分析與後話

前一篇最後已經表明,我的圖片搜尋有問題,確實有問題,為啥會有這些呢?

雖然搜尋的精度都出來了的,並且也達到了預期的結果。

為啥有些東西會顯示不出來呢?

主要原因:就是源網站的限制,我這樣明顯是在偷流量,那個網站允許爬蟲惡意來爬,佔資源呢。

但是,既然爬不到,那為啥又能夠顯示呢?當然原網站通過指令碼程式碼限制了,一個固定的ip來訪問的頻率。

如果超過一定的頻率就會限制的,或者直接直接不允許外網頁連結本網站圖片。

但是為啥我的索引庫裡面會有相應的索引呢?當然我推測主要我僅僅是通過流來讀取,而並沒有來遠端連結。

解決思路:第一個找到的方法就是通過高匿名ip來代理,這樣是否就可以獲得其所有的圖片呢?

為此我還特地找了一個專門有代理ip網站,並且自己有寫了一個crawlIp來抓取ip,並且通過httclient來檢測是否為高匿名。

專案程式碼這裡就不貼了,主要也是jsoup等來解析網頁。

另外一個想到的方法,就是從源頭來,我這個引擎呢,並沒有本地圖片的,爬也僅僅是借用下,用完就還了,

所以我想到的就是本地儲存,但是當然這就需要物質支援的,當我把爬完的圖片,都存到本地,都建立索引,

並且定期更新,然後在lire的基礎上,從底層程式碼的基礎上來提高精度,再把搜尋率高的索引靠前......再繼續我就是真正的想做一個引擎了

畢竟這僅僅是一個學習的專案,做不大,感覺並不現實也沒有物質基礎,哈哈哈。

其實最開始的時候,我打算再去利用大資料分散式的知識,這樣就能夠實現本地儲存,但是貌似現階段並不可能,很多前輩都分享經驗,

他們做爬蟲的時候,有些或者獲得代理ip,或者通過來控制爬取的頻率,或者通過拔插網線來更換自己的ip來爬取資料。

也曾嘗試過用多執行緒來縮短爬取和檢索的時間。

這整個專案感覺比較難得地方並沒有,唯一說起來高大上的工作lire都已經幫你做了,下面給出三個專案,本人程式設計有限,程式碼大家也

僅僅參考下吧,錢袋css和html太醜了,可能有些類現在我自己感覺也特別噁心。如果發現有哪些錯誤和可以更好的方法解決獲取不到

源圖片的問題,歡迎提出來,大家共同學習

贈人玫瑰手留餘香√