The invention discloses a distributed crawler management system: a system for login and data display page display module; create the project and project management module for the management of the project management module; crawler deployment and management of the project of the data management module of crawler crawler; data in monitoring and management of the crawler node node; management module management and web crawler on the user's agent management module, agent management in which the node is a virtual machine for reptiles from the cloud on the platform. In addition, the invention also provides a distributed crawler management method. The distributed crawler management system of the invention can provide anti crawling solutions and management and analysis of reptiles and data so as to provide a safe and efficient data crawling solution for enterprises or individuals.
【技術實現步驟摘要】
一種分布式爬蟲管理系統及其方法
本專利技術涉及一種分布式爬蟲管理系統和方法,具體涉及一種能夠對爬蟲和爬蟲爬取的數據進行管理與分析的分布式爬蟲管理系統及其方法。
技術介紹
傳統爬蟲管理方式去互聯網上爬取數據會被一些網站的反爬機制屏蔽掉,導致爬蟲開發人員辛辛苦苦開發出來的爬蟲爬取不到有用的數據,即使調整爬蟲后過一段時間又不能正常爬取數據,反復的修改,對于企業來說既費時間又費金錢,對于開發人員來說重復單調的工作沒有任何意義。因此,亟待提供一種能夠對爬蟲及其爬取的數據進行有效管理和分析的方案。
技術實現思路
為解決上述技術問題,本專利技術提供一種分布式爬蟲管理系統,該系統是一個功能強大的爬蟲管理平臺,主要提供防反爬解決方案以及爬蟲和數據的管理與分析,為企業(或個人)提供安全、高效的數據爬取解決方案。本專利技術采用的技術方案為:本專利技術的實施例提供一種分布式爬蟲管理系統,包括:主頁展示模塊,包括登錄單元和數據展示單元,所述登錄單元為用戶訪問分布式爬蟲管理系統提供接口,用戶通過在所述登錄單元中輸入相應的身份驗證信息來訪問所述分布式爬蟲管理系統,所述數據展示單元用于展示與爬蟲相關的數據;項目管理模塊,基于用戶的指令創建項目,為所創建的項目分配相關的項目爬蟲,并導入項目爬蟲的任務源,以及對項目和項目爬蟲進行管理;爬蟲管理模塊,基于用戶的指令,將用戶編輯好的爬蟲程序通過上傳爬蟲入口添加到分布式爬蟲管理系統中,基于項目信息中的爬蟲策略對爬蟲進行部署,并對爬蟲的運行狀況進行管理;數據管理模塊,對項目爬蟲爬取到的數據進行監控和統計管理,并將統計后的信息通過數據展示單元進行可視化展示 ...
【技術保護點】
一種分布式爬蟲管理系統,其特征在于,包括:主頁展示模塊,包括登錄單元和數據展示單元,所述登錄單元為用戶訪問分布式爬蟲管理系統提供接口,用戶通過在所述登錄單元中輸入相應的身份驗證信息來訪問所述分布式爬蟲管理系統,所述數據展示單元用于展示與爬蟲相關的數據;項目管理模塊,基于用戶的指令創建項目,為所創建的項目分配相關的項目爬蟲,并導入項目爬蟲的任務源,以及對項目和項目爬蟲進行管理;爬蟲管理模塊,基于用戶的指令,將用戶編輯好的爬蟲程序通過上傳爬蟲入口添加到分布式爬蟲管理系統中,基于項目信息中的爬蟲策略對爬蟲進行部署,并對爬蟲的運行狀況進行管理;數據管理模塊,對項目爬蟲爬取到的數據進行監控和統計管理,并將統計后的信息通過數據展示單元進行可視化展示;節點管理模塊,基于數據管理模塊統計的信息對爬蟲所運行的節點進行管理,以確保每個爬蟲運行在相對應的爬蟲節點上,所述爬蟲節點為從云平臺上申請的虛擬機;日志管理模塊,用于對用戶的操作行為進行監控記錄;代理管理模塊,基于需要代理管理的用戶的授權,對授權用戶的爬蟲任務進行代理管理。
【技術特征摘要】
1.一種分布式爬蟲管理系統,其特征在于,包括:主頁展示模塊,包括登錄單元和數據展示單元,所述登錄單元為用戶訪問分布式爬蟲管理系統提供接口,用戶通過在所述登錄單元中輸入相應的身份驗證信息來訪問所述分布式爬蟲管理系統,所述數據展示單元用于展示與爬蟲相關的數據;項目管理模塊,基于用戶的指令創建項目,為所創建的項目分配相關的項目爬蟲,并導入項目爬蟲的任務源,以及對項目和項目爬蟲進行管理;爬蟲管理模塊,基于用戶的指令,將用戶編輯好的爬蟲程序通過上傳爬蟲入口添加到分布式爬蟲管理系統中,基于項目信息中的爬蟲策略對爬蟲進行部署,并對爬蟲的運行狀況進行管理;數據管理模塊,對項目爬蟲爬取到的數據進行監控和統計管理,并將統計后的信息通過數據展示單元進行可視化展示;節點管理模塊,基于數據管理模塊統計的信息對爬蟲所運行的節點進行管理,以確保每個爬蟲運行在相對應的爬蟲節點上,所述爬蟲節點為從云平臺上申請的虛擬機;日志管理模塊,用于對用戶的操作行為進行監控記錄;代理管理模塊,基于需要代理管理的用戶的授權,對授權用戶的爬蟲任務進行代理管理。2.根據權利要求1所述的分布式爬蟲管理系統,其特征在于,所述爬蟲管理模塊通過設置反爬蟲機制來對爬蟲進行部署和管理,其中,所述反爬蟲機制包括:基于用戶指令,向云平臺申請多個IP地址,在爬蟲執行爬蟲任務的過程中如果被所訪問的網站限制,則從申請的多個IP地址中選擇一個IP地址來訪問被限制訪問的網站。3.根據權利要求2所述的分布式爬蟲管理系統,其特征在于,當使用更換的IP地址訪問被限制訪問的網站后,增加當前延遲下載的時間或者減小網頁下載并發數。4.根據權利要求1所述的分布式爬蟲管理系統,其特征在于,所述節點管理模塊包括動態調整爬蟲節點數的爬蟲節點調整單元和監控爬蟲節點的爬蟲節點監控單元;所述爬蟲節點調整單元周期性檢測是否需要增加爬蟲節點或者減少爬蟲節點,如果在預設的多個周期內,每個周期內檢測的當前爬蟲任務量都超過上限閾值,則增加爬蟲節點;如果在預設的多個周期內,每個周期內檢測的當前爬蟲任務量都小于下限閾值,則減少爬蟲節點;當前爬蟲任務量基于下述公式來確定:其中,P為當前爬蟲任務量,P=1表示當前爬蟲節點數量不能滿足爬蟲任務需求,需要增加爬蟲節點,P=-1表示爬蟲系統所擁有的爬蟲節點數量遠遠高于實際爬蟲任務需求,需要減少爬蟲節點,c表示當前爬蟲任務數,ui表示第i個爬蟲任務的待抓取URL數,n表示當前處于運行狀態的爬蟲節點數,Fmax表示上限閾值,Fmin表示下限閾值。5.根據權利要求4所述的分布式爬蟲管理系統,其特征在于,所述爬蟲節點監控單元周期性檢測爬蟲節點發送的心跳包,如果在連續的多個周期內,在預定的時間內都沒有收到某個爬蟲節點發送的心跳包,則判定該爬蟲節點已宕機。6.根據權利要求4或5所述的分布式爬蟲管理系統,其特征在于,所述預設的多個周期為5個周期。7.根據權利要求1所述的分布式爬蟲管理系統,其特征在于,所述數據展示單元用于展示如下信息:項目總數、節點總數、爬蟲程序總數、爬蟲實例總數、爬取頁面任務總量、完成頁面爬蟲數量、爬取數據總量、爬取數據節點利用率、爬蟲節...
【專利技術屬性】
技術研發人員:劉希,陳進寶,劉光輝,
申請(專利權)人:國信優易數據有限公司,
類型:發明
國別省市:北京,11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。