[發明專利]網頁數據的下載方法及裝置有效
| 申請號: | 201410827793.4 | 申請日: | 2014-12-25 |
| 公開(公告)號: | CN104572901B | 公開(公告)日: | 2018-12-18 |
| 發明(設計)人: | 于勝軍;馬哲;譚國斌 | 申請(專利權)人: | 小米科技有限責任公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 祝亞男 |
| 地址: | 100085 北京市海淀區清*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 網頁 數據 下載 方法 裝置 | ||
本公開是關于一種網頁數據的下載方法及裝置,屬于互聯網技術領域。所述方法包括:獲取待抓取網頁數據的一級網址;從一級網址的網頁數據中,提取多個二級網址,一級網址的網頁數據中包含多個二級網址及干擾數據;將多個二級網址加入第一消息隊列;基于第一消息隊列,下載二級網址對應的網頁數據。本公開在獲取到待抓取網頁數據的一級網址后,從一級網址的網頁數據中,提取多個二級網址,并將多個二級網址加入第一消息隊列,進而基于第一消息隊列,下載二級網址對應的網頁數據。由于借助消息隊列下載網頁數據,無需獲知地址端口等配置信息,基于消息隊列中存儲的二級網址下載,因此,降低了資源消耗,簡化了下載的復雜度。
技術領域
本公開涉及互聯網技術領域,尤其涉及一種網頁數據的下載方法及裝置。
背景技術
隨著互聯網技術的發展,互聯網上的數據爆炸性增長。傳統的單機網絡爬蟲系統因獲取網頁數據的速度較慢、準確性較低,很難適應大規模的網頁數據獲取需求。為了提高獲取速度以及準確性,分布式網絡爬蟲系統應運而生。分布式網絡爬蟲系統作為一種新的數據獲取系統,具有單機網絡爬蟲系統無法比擬的數據采集速度和規模,可快速地為抓取到更多的網頁數據。
分布式網絡爬蟲系統由調度器和多個下載器組成,其中,調度器負責為各個下載器分配待下載網址,下載器用于根據待下載網址從互聯網上下載網頁數據。在分布式網絡爬蟲系統中,調度器和下載器間采用RPC(Remote Procedure Call,遠程過程調度)協議進行通信。基于分布式網絡爬蟲系統,相關技術在下載網頁數據時,調度器和下載器需要先獲知彼此的地址端口等配置信息,然后調度器根據待下載網址的數量,確定為各個下載器分配的待下載網址,進而通過各個下載器的地址端口將待下載地址發送至各個下載器,基于接收到的下載網址,下載器就可從互聯網上下載網頁數據。
發明內容
為克服相關技術中存在的問題,本公開提供一種網頁數據的下載方法及裝置。
根據本公開實施例的第一方面,提供一種網頁數據的下載方法,該方法包括:
獲取待抓取網頁數據的一級網址;
從所述一級網址的網頁數據中,提取多個二級網址,所述一級網址的網頁數據中包含多個二級網址及干擾數據;
將所述多個二級網址加入第一消息隊列;
基于所述第一消息隊列,下載二級網址對應的網頁數據。
結合第一方面,在第一方面的第一種可能的實現方式中,所述基于所述第一消息隊列,下載二級網址對應的網頁數據,包括:
根據所述第一消息隊列中的二級網址數量及各個下載實例的屬性信息,為各個下載實例分配二級網址,所述屬性信息包括下載實例的數量及下載實例的下載狀態;
基于分配的二級網址,通過各個下載實例下載二級網址對應的網頁數據。
結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述根據所述第一消息隊列中的二級網址數量及各個下載實例的屬性信息,為各個下載實例分配二級網址,包括:
根據所述第一消息隊列中的二級網址數量及下載實例的數量,將所述第一消息隊列中的二級網址平均分配給各個下載實例;或,
根據各個下載實例的下載狀態,確定各個下載實例的下載優先級,按照各個下載實例的下載優先級,將所述第一消息隊列中的二級網址,分配給各個下載實例。
結合第一方面,在第一方面的第三種可能的實現方式中,所述基于所述第一消息隊列,下載二級網址對應的網頁數據之后,還包括:
將下載得到的網頁數據加入第二消息隊列;
從所述第二消息隊列中,獲取下載得到的網頁數據;
從所述下載得到的網頁數據中,提取指定數據;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于小米科技有限責任公司,未經小米科技有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410827793.4/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





