一個簡單的網絡爬蟲 - SharkCrawler

jopen 12年前發布 | 23K 次閱讀 爬蟲 網絡爬蟲

最近需要通過網絡爬蟲來收集點數據,想找一些簡單易用的開源版本,總是要么配置起來有點復雜,要么功能上不太容易擴展。還是自己實現一個簡單的版本更容易擴展相應的功能。這個版本的實現完全參照wiki上面對于webcrawler的架構來設計類型。

一個簡單的網絡爬蟲 - SharkCrawler

實現了一些簡單的功能

  1. 從指定起始地址爬鏈接,結果以htm形式存在本地文件系統
  2. 執行目標輸出路徑和工作線程數
  3. 暫定和恢復爬行
  4. 跟蹤爬行請求以及出錯請求
  5. </ol>

    由于只是用來收集比較少的數據,很多高級的功能沒有實現,

    1. 沒有持久化隊列,程序關閉不能斷點續爬
    2. 判斷循環鏈接算法需要優化,目前只用了一個自定義的url樹來跟蹤鏈接
    3. 由于沒有用圖來跟蹤鏈接,鏈接于鏈接的之間的入度關系信息丟掉了,無法應用PageRank等依賴于鏈接關系的算法
    4. </ol>

       

      爬蟲運行起來的樣子,

      一個簡單的網絡爬蟲 - SharkCrawler

       

      輸出目錄

      一個簡單的網絡爬蟲 - SharkCrawler

       

      安裝包和代碼下載放在了Codeplex,


      https://sharkcrawler.codeplex.com/

       

      如果有人需要爬網頁或者進行一些數據分析,可以直接更改這個方法SharkCrawler.Scheduler.DefaultScheduler.ThreadProc()進行相應的擴展。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!