基於Golang的分佈式爬蟲管理平臺,支持Python、NodeJS、Java、Go、PHP等多種編程語言以及多種爬蟲框架。git
項目自今年三月份上線以來受到爬蟲愛好者們和開發者們的好評,很多使用者還表示會用Crawlab搭建公司的爬蟲平臺。通過近數月的迭代,咱們陸續上線了定時任務、數據分析、網站信息、可配置爬蟲、自動提取字段、下載結果、上傳爬蟲等功能,將Crawlab打造得更加實用,更加全面,可以真正幫助用戶解決爬蟲管理困難的問題。github
Crawlab主要解決的是大量爬蟲管理困難的問題,例如須要監控上百個網站的參雜scrapy
和selenium
的項目不容易作到同時管理,並且命令行管理的成本很是高,還容易出錯。Crawlab支持任何語言和任何框架,配合任務調度、任務監控,很容易作到對成規模的爬蟲項目進行有效監控管理。數據庫
本次v0.3.0
版本是一次重大更新,主要是將原來基於Celery的Python版本後臺用Golang替代了。更新內容以下:編程
用Golang重構的初衷是爲了解決一些根本性的bug,例如定時任務沒法穩定觸發,節點不會自動顯示爲離線,等等。重構後的API會更加穩定,更加高性能,之前任務列表響應大概在幾百毫秒,而如今僅僅須要幾毫秒。此外,本次重構優化了用戶使用流程,例如以前須要手動部署爬蟲,須要用戶點擊不少次才能運行爬蟲;而如今,全部爬蟲都是自動部署,代價是用戶上傳爬蟲以後須要等待不到1分鐘的時間,待爬蟲文件經過GridFS部署到全部節點以後,才能夠運行(固然,主節點是能夠直接運行的)。本次重構還加入了一些附加功能,例如用戶權限的功能(提供了基礎的權限管理)、節點拓撲圖、文件管理等等。總的來講,本次更新將Crawlab打造得更加穩定和實用。後端
很遺憾,因爲時間緊張,沒有將可配置爬蟲移植到新版Crawlab上。可是咱們後面會將該功能加入進來。微信
不過,若是您有更好的idea,歡迎隨時提需求。框架
若是您以爲Crawlab對您的平常開發或公司有幫助,請加做者微信 tikazyq1 並註明"Crawlab",做者會將你拉入羣。歡迎在Github上進行star,以及,若是遇到任何問題,請隨時在Github上提issue。另外,歡迎您對Crawlab作開發貢獻。scrapy