一個簡單的網絡爬蟲 - SharkCrawler
最近需要通過網絡爬蟲來收集點數據,想找一些簡單易用的開源版本,總是要么配置起來有點復雜,要么功能上不太容易擴展。還是自己實現一個簡單的版本更容易擴展相應的功能。這個版本的實現完全參照wiki上面對于webcrawler的架構來設計類型。
實現了一些簡單的功能
- 從指定起始地址爬鏈接,結果以htm形式存在本地文件系統
- 執行目標輸出路徑和工作線程數
- 暫定和恢復爬行
- 跟蹤爬行請求以及出錯請求 </ol>
- 沒有持久化隊列,程序關閉不能斷點續爬
- 判斷循環鏈接算法需要優化,目前只用了一個自定義的url樹來跟蹤鏈接
- 由于沒有用圖來跟蹤鏈接,鏈接于鏈接的之間的入度關系信息丟掉了,無法應用PageRank等依賴于鏈接關系的算法 </ol>
由于只是用來收集比較少的數據,很多高級的功能沒有實現,
爬蟲運行起來的樣子,
輸出目錄
安裝包和代碼下載放在了Codeplex,
https://sharkcrawler.codeplex.com/
如果有人需要爬網頁或者進行一些數據分析,可以直接更改這個方法SharkCrawler.Scheduler.DefaultScheduler.ThreadProc()進行相應的擴展。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!