[發(fā)明專利]一種基于代工模式的動態(tài)網(wǎng)頁爬蟲方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 202010488720.2 | 申請日: | 2020-06-02 |
| 公開(公告)號: | CN111651656B | 公開(公告)日: | 2023-02-24 |
| 發(fā)明(設(shè)計)人: | 楊杰;程克非;吳渝;李紅波;葉雯靜;劉鐘書;劉洋旗 | 申請(專利權(quán))人: | 重慶郵電大學(xué) |
| 主分類號: | G06F16/951 | 分類號: | G06F16/951;G06F16/955 |
| 代理公司: | 成都行之專利代理事務(wù)所(普通合伙) 51220 | 代理人: | 張超 |
| 地址: | 400000 重*** | 國省代碼: | 重慶;50 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 代工 模式 動態(tài) 網(wǎng)頁 爬蟲 方法 系統(tǒng) | ||
1.一種基于代工模式的動態(tài)網(wǎng)頁爬蟲方法,其特征在于,包括以下步驟:
S1:接收用戶輸入的業(yè)務(wù)信息,配置爬蟲業(yè)務(wù)參數(shù),進行業(yè)務(wù)評估,并做好準(zhǔn)備工作;
S2:根據(jù)所述業(yè)務(wù)信息,在指定時間分配好系統(tǒng)資源,發(fā)起多個獨立進程的業(yè)務(wù)爬蟲;
S3:所述業(yè)務(wù)爬蟲采用模擬瀏覽器模式,對動態(tài)網(wǎng)頁原始URL進行爬取,并返回目標(biāo)靜態(tài)數(shù)據(jù)內(nèi)容的URL;
S4:審查所述URL的有效性和非重復(fù)性,并對通過審查的爬取任務(wù),構(gòu)造生產(chǎn)任務(wù)消息列表,在分布式服務(wù)器上發(fā)起多個多線程的生產(chǎn)爬蟲;
S5:所述生產(chǎn)爬蟲采用自動化程序模式,對含靜態(tài)內(nèi)容的URL頁面進行爬取,并返回目標(biāo)數(shù)據(jù)字段和附件文件;
S6:對所述目標(biāo)數(shù)據(jù)字段進行預(yù)處理,預(yù)處理后的目標(biāo)數(shù)據(jù)字段和所述附件文件形成業(yè)務(wù)數(shù)據(jù),存儲所述業(yè)務(wù)數(shù)據(jù);
S7:導(dǎo)出所述業(yè)務(wù)數(shù)據(jù),反饋給用戶;
其中,所述業(yè)務(wù)信息包括業(yè)務(wù)ID、業(yè)務(wù)描述、起始URL、登錄資料、執(zhí)行策略、防反爬措施、爬取數(shù)據(jù)字段與定位和導(dǎo)出數(shù)據(jù)格式;
其中,所述登錄資料包括賬號、密碼和CA證書,所述執(zhí)行策略為一次性定時增量爬取,所述防反爬措施包括IP代理、瀏覽器頭和CSS偏移;
其中,所述步驟S1中準(zhǔn)備工作包括:
業(yè)務(wù)參數(shù)完備性檢查:確保所述業(yè)務(wù)信息的完整性;
訪問通行證準(zhǔn)備:根據(jù)所述業(yè)務(wù)信息,登錄目標(biāo)網(wǎng)站,獲取并保存cookies信息,驗證所述CA證書;
小任務(wù)嘗試:根據(jù)所述起始URL和所述訪問通行證準(zhǔn)備,構(gòu)造小型爬取任務(wù),通過執(zhí)行情況,分析所述目標(biāo)網(wǎng)站的字符編碼、數(shù)據(jù)量、訪問時長和爬取成功率;
設(shè)計數(shù)據(jù)字段與規(guī)范化要求:根據(jù)所述業(yè)務(wù)信息,設(shè)計目標(biāo)數(shù)據(jù)的字段名稱、字段格式、字段長度和規(guī)范化要求;
建立數(shù)據(jù)庫、數(shù)據(jù)表和附件存儲空間;
其中,所述步驟S1中業(yè)務(wù)評估包括對業(yè)務(wù)所需的服務(wù)器硬件、軟件、存儲和網(wǎng)絡(luò)帶寬的評估。
2.根據(jù)權(quán)利要求1所述的基于代工模式的動態(tài)網(wǎng)頁爬蟲方法,其特征在于,若數(shù)據(jù)量巨大、生產(chǎn)爬蟲并行程度高,則采用分庫分表的方式進行存儲。
3.根據(jù)權(quán)利要求1所述基于代工模式的動態(tài)網(wǎng)頁爬蟲方法,其特征在于,所述步驟S3中,所述模擬瀏覽器模式包括模擬瀏覽器鼠標(biāo)點擊、滾動條滑動、鍵盤輸入和復(fù)制粘貼。
4.根據(jù)權(quán)利要求1所述基于代工模式的動態(tài)網(wǎng)頁爬蟲方法,其特征在于,所述步驟S4包括以下子步驟:
S01:通過合法性規(guī)則審查URL的有效性;
S02:通過Hash算法將URL映射到HashMap的Key上,采用布隆過濾器審查URL是否重復(fù);若重復(fù),則丟棄,并進行日志記錄。
5.根據(jù)權(quán)利要求1所述基于代工模式的動態(tài)網(wǎng)頁爬蟲方法,其特征在于,所述步驟S6中,對所述目標(biāo)數(shù)據(jù)字段進行預(yù)處理,詳細內(nèi)容如下:
數(shù)據(jù)完整性檢查:指定要爬取的字段是否完整,數(shù)據(jù)內(nèi)容是否達到要求;對不能達到要求的數(shù)據(jù)可根據(jù)嚴(yán)重程度進行糾正、標(biāo)注或丟棄;
字段規(guī)范化處理:字段的數(shù)據(jù)格式、數(shù)據(jù)類型是否符合設(shè)定;對不能達到要求的數(shù)據(jù)進行單獨轉(zhuǎn)換;
附件文件轉(zhuǎn)存:將爬取的附件文件進行病毒掃描后,重新分配含時間戳的不易重復(fù)的文件名,再轉(zhuǎn)存到固定的位置存儲,并新增一個數(shù)據(jù)字段用于記錄附件文件的路徑和文件名。
6.一種基于代工模式的動態(tài)網(wǎng)頁爬蟲系統(tǒng),其特征在于,包括:
業(yè)務(wù)接口模塊:作為與業(yè)務(wù)相關(guān)的用戶接口,接收用戶輸入的業(yè)務(wù)信息,配置爬蟲業(yè)務(wù)相關(guān)參數(shù),進行業(yè)務(wù)評估,并做好準(zhǔn)備工作;所述業(yè)務(wù)信息包括:業(yè)務(wù)ID、業(yè)務(wù)描述、起始URL、登錄資料、執(zhí)行策略、防反爬措施、爬取數(shù)據(jù)字段與定位和最終導(dǎo)出數(shù)據(jù)格式;所述準(zhǔn)備工作包括業(yè)務(wù)參數(shù)完備性檢查、訪問通行證準(zhǔn)備、小任務(wù)嘗試、設(shè)計數(shù)據(jù)字段與規(guī)范化要求、建立數(shù)據(jù)庫、建立數(shù)據(jù)表和建立附件存儲空間;所述業(yè)務(wù)評估包括對業(yè)務(wù)所需的服務(wù)器硬件、軟件、存儲和網(wǎng)絡(luò)帶寬的評估;
業(yè)務(wù)調(diào)度模塊:根據(jù)業(yè)務(wù)相關(guān)信息,在指定時間分配好系統(tǒng)資源,發(fā)起多個獨立進程的業(yè)務(wù)爬蟲;
業(yè)務(wù)爬蟲:采用模擬瀏覽器模式,對動態(tài)網(wǎng)頁原始URL進行爬取,并返回目標(biāo)靜態(tài)數(shù)據(jù)內(nèi)容的URL;
生產(chǎn)調(diào)度模塊:接收由業(yè)務(wù)爬蟲返回的爬取任務(wù),審查URL的有效性和非重復(fù)性,并對通過審核的爬取任務(wù)構(gòu)造生產(chǎn)任務(wù)消息列表,在分布式集群服務(wù)器上發(fā)起多個多線程的生產(chǎn)爬蟲;
生產(chǎn)爬蟲:采用自動化程序模式,對含靜態(tài)內(nèi)容的URL頁面進行爬取,并返回目標(biāo)數(shù)據(jù)和附件文件;
存儲模塊:接收生產(chǎn)爬蟲返回的目標(biāo)數(shù)據(jù)和附件文件,對所述目標(biāo)數(shù)據(jù)進行完整性、規(guī)范化處理,交將處理后的目標(biāo)數(shù)據(jù)和附件文件存入數(shù)據(jù)庫中,形成業(yè)務(wù)數(shù)據(jù);
導(dǎo)出模塊:根據(jù)所述最終導(dǎo)出數(shù)據(jù)格式導(dǎo)出業(yè)務(wù)數(shù)據(jù),反饋給用戶;
其中,所述業(yè)務(wù)參數(shù)完備性檢查,是指:確保所述業(yè)務(wù)信息的完整性;
所述訪問通行證準(zhǔn)備,是指:根據(jù)所述業(yè)務(wù)信息,登錄目標(biāo)網(wǎng)站,獲取并保存cookies信息,驗證CA證書;
所述小任務(wù)嘗試,是指:根據(jù)所述起始URL和所述訪問通行證準(zhǔn)備,構(gòu)造小型爬取任務(wù),通過執(zhí)行情況,分析所述目標(biāo)網(wǎng)站的字符編碼、數(shù)據(jù)量、訪問時長和爬取成功率;
所述設(shè)計數(shù)據(jù)字段與規(guī)范化要求,是指:根據(jù)所述業(yè)務(wù)信息,設(shè)計目標(biāo)數(shù)據(jù)的字段名稱、字段格式、字段長度和規(guī)范化要求。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于重慶郵電大學(xué),未經(jīng)重慶郵電大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010488720.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





