Crawlab(分布式爬蟲管理平臺)是一個支持Scrapy、Puppeteer、Selenium,支持Python、NodeJS等任何語言和框架的分布式爬蟲管理平臺,通過增加工作節點數量,Crawlab可以做到橫向擴展,用戶一看便知,相信使用起來也是非常順手,歡迎有需要的用戶前來獲取winwin7分享的這款Crawlab中文版!
軟件說明
Crawlab能夠幫助用戶實現多語言爬蟲的目的,通過多種方式進行安裝即可使用,軟件采用主節點的形式來快速獲取網站數據,從而保存到本地數據中,每當目標站點發生變化時即會更新數據,用戶還可通過相關控件來設計前端展示效果,極大的提升了程序員開發的效率。
介紹
Crawlab架構
Crawlab的架構包括了一個主節點(Master Node)和多個工作節點(Worker Node),以及負責通信和數據儲存的Redis和MongoDB數據庫。
主節點
主節點是整個Crawlab架構的核心,屬于Crawlab的中控系統。主節點負責與前端應用進行通信,并通過Redis將爬蟲任務派發給工作節點。同時,主節點會同步(部署)爬蟲給工作節點,通過Redis和MongoDB的GridFS。
工作節點
工作節點的關鍵作用是實行爬蟲每日任務和儲存爬取數據信息與日志,而且根據Redis的PubSub跟主節點通訊。根據提升工作節點總數,Crawlab能夠保證橫著拓展,不一樣的爬蟲每日任務能夠分派到不一樣的節點上實行。
MongoDB
MongoDB是Crawlab的運作數據庫查詢,儲存有節點、爬蟲、每日任務、計劃任務等數據信息,此外GridFS文檔儲存方法是主節點儲存爬蟲文檔并同歩到工作節點的正中間媒體。
Redis
Redis是十分受大家喜愛的Key-Value數據庫查詢,在Crawlab中關鍵完成節點間數據通訊的作用。比如,節點會將自身信息內容根據HSET儲存在Redis的nodes哈希列表中,主節點依據哈希列表來分辨線上節點。
前面
前面是一個根據Vue-Element-Admin的單頁應用。在其中器重了許多Element-UI的控制來適用相對應的展現。