[發明專利]一種分布式網絡爬蟲的URL去重方法及其系統在審
| 申請號: | 201811392810.0 | 申請日: | 2018-11-21 |
| 公開(公告)號: | CN109657118A | 公開(公告)日: | 2019-04-19 |
| 發明(設計)人: | 胡翔 | 申請(專利權)人: | 安徽云融信息技術有限公司 |
| 主分類號: | G06F16/951 | 分類號: | G06F16/951;G06F16/955;H04L9/06 |
| 代理公司: | 上海精晟知識產權代理有限公司 31253 | 代理人: | 馮子玲 |
| 地址: | 230000 安徽省合肥市高新區*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 去重 抓取 分布式網絡 爬蟲 遍歷 數據傳輸領域 符號查找 密文生成 網絡爬蟲 壓縮處理 資源空間 廣義表 資源庫 磁盤 解密 密文 數組 切割 占有率 網頁 轉換 改進 | ||
本發明公開了一種分布式網絡爬蟲的URL去重方法及其系統,涉及數據傳輸領域。本發明包括如下步驟:步驟S01:獲取待抓取網頁的URL;步驟S02:URL進行MD5壓縮處理;步驟S03:將生成的密文切割成16位數組;步驟S04:根據磁盤符號查找方式將密文生成數組的轉換為相應路徑;步驟S05:判斷linkurl中是否存在相應的URL;步驟S06:對資源庫中的URL進行解密并動態插入改進廣義表;步驟S07:遍歷待去重的URL每個字母;步驟S08:依次判斷每個字母對應的節點是否存在。本發明通過MD5加密算法與樹相結合的方式對URL初步去重,再通過將初步去重的URL依次遍歷每個字母,根據字母對應的節點進行二次去重,提升了網絡爬蟲抓取數據精確性和效率,降低了資源空間占有率。
技術領域
本發明屬于數據傳輸領域,特別是涉及一種分布式網絡爬蟲的URL去重方法及其系統。
背景技術
目前,網絡爬蟲常用的URL去重方案有基于數據庫的去重方案和基于內存鏈表的去重方案,這些方案在URL庫容量不大的情況下有不錯的效果。但是,現有的分布式爬蟲面向的URL庫容量通常非常大,需要URL去重能夠持久保持高效運作,而上述常用的URL去重方案在爬蟲程序運行較長時間后會有效率劇降或任務癱瘓的風險。現有技術中的URL去重方法設計不夠合理,亟需改進。
發明內容
本發明的目的在于提供一種分布式網絡爬蟲的URL去重方法及其系統,通過MD5加密算法與樹相結合的方式對URL初步去重,再通過將初步去重的URL依次遍歷每個字母,根據字母對應的節點進行二次去重,解決了現有的網絡爬蟲抓取數據精確性和效率不足以及占用資源多的問題。
為解決上述技術問題,本發明是通過以下技術方案實現的:
本發明為一種分布式網絡爬蟲的URL去重方法,包括如下步驟:
步驟S01:獲取待抓取網頁的URL;
步驟S02:將獲取的URL進行16位MD5壓縮處理;
步驟S03:將生成的密文切割成16位數組;
步驟S04:根據磁盤符號查找方式將密文生成數組的轉換為相應路徑;
步驟S05:判斷linkurl中是否存在相應的URL;
若不存在,則URL存儲至資源庫;
若存在,則刪除該URL;
步驟S06:對資源庫中的URL進行解密并動態插入改進廣義表;
步驟S07:從動態廣義表根節點出發,遍歷待去重的URL每個字母;
步驟S08:依次判斷每個字母對應的節點是否存在;
若存在,則將該條URL去重;
若不存在,則將該條URL存儲至待抓取隊列。
優選地,所述步驟S02中,對URL加密完成后以樹的形式進行存儲。
優選地,所述步驟S03中,密文切割成16位的數組a后,將數據a[0]的值與根節點下指向的節點值進行比較;若存在,則將找到的節點r[1]指向的下一個節點與a[1]相比較,依次比較直至a[15]比較結束。
優選地,所述步驟S07中,廣義表中每個節點存儲一個字母,遍歷URL每個字母時,若某一字母對應的廣義表節點不存在,則需先創建該節點對應層上的root節點和該字母的對應節點后,返回繼續遍歷。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽云融信息技術有限公司,未經安徽云融信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811392810.0/2.html,轉載請聲明來源鉆瓜專利網。





