我想利用利用Lucene.net做個網路蜘蛛。主要想利用Lucene.net創建索引,數據采集的工作自己開發完成?,F在有些問題請教大家:蜘蛛采集的數據存放在數據庫中還是存放在哪里,我打算放在數據庫中,哪個性能上好些呢?蜘蛛為什么要下載網頁呢?我看每個蜘蛛都有下載文件的功能,但是不清楚為何一定要下載網頁呢?邊解析html邊往數據庫中存不行嗎?希望高手賜教。謝謝
2 回答

慕少森
TA貢獻2019條經驗 獲得超9個贊
存入數據庫就可以了,一般的蜘蛛沒有太大必要實現自己的存儲方案,但注意最好不要使用輕量級的數據庫產品,吞吐量比較差。
下載網頁是必須下的,不下下來怎么分析內容嘛。你的意應該是指下載后的網頁數據沒必要保存起來吧?是這樣的,可以直接對網頁代碼進行分析,然后將分析后的數據儲存起來就行了,沒有需要的話就不用保存網頁。
通常蜘蛛需要擁有的功能:
漫游:在各個網頁間爬行,需保證如無特殊需求時不要重復爬一個頁、不要繞在死胡同里出不來。
下載數據:下載爬到的網頁源代碼,如有需要的話,還可以下載其附屬的資源文件,如圖片等。
分析與存檔:這個功能可以做成委托或事件,由調用者來配置具體的分析方式,并決定如何處理源數據與分析后的數據,這樣可以保證蜘蛛的通用性。
另外蜘蛛一般都是多線程并行處理的,所以可能還需要一個線程調度程序,用以給每個線程委派任務,并避免沖突;也可以讓每個線程彼此獨立地自己維護自己的任務,比如將每個線程限定在不同的域名中,讓它們只爬自己轄區內的網頁,就不會有沖突問題。
- 2 回答
- 0 關注
- 390 瀏覽
添加回答
舉報
0/150
提交
取消