[發明專利]一種基于搜索引擎的網絡爬蟲的實現方法無效
| 申請號: | 201210211633.8 | 申請日: | 2012-06-25 |
| 公開(公告)號: | CN103514189A | 公開(公告)日: | 2014-01-15 |
| 發明(設計)人: | 蔣志勇 | 申請(專利權)人: | 上海博騰信息科技有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 201315 上海市浦*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 搜索引擎 網絡 爬蟲 實現 方法 | ||
技術領域
本發明涉及一種信息搜集技術,尤其涉及一種基于搜索引擎的網絡爬蟲的實現方法。
背景技術
隨著互聯網的發展壯大,人們獲取信息的途徑逐漸被網絡所替代。互聯網發展初期,人們主要通過瀏覽門戶網站的方式獲取所需信息,但是隨著Web的急劇發展,用這種方式尋找自己所需信息變得越來越困難。目前,人們大多通過搜索引擎獲取有用信息,因此,搜索引擎技術的發展將直接影響人們獲取所需信息的速度和質量。
1994年,世界上第一個網絡檢索工具Web?Crawler問世,目前較流行的搜索引擎有百度、Google、Yahoo、Info?seek、Inktomi、Teoma、Live?Search等。出于商業機密的考慮,現在各個搜索引擎使用的Crawler系統的技術內幕一般都不公開,現有的文獻資料也僅限于概要性介紹。隨著網絡信息資源呈指數級增長及網絡信息資源動態變化,傳統的搜索引擎提供的信息檢索服務已無法滿足人們日益增長的對個性化服務的需求,正面臨著巨大的挑戰。
傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統的一定停止條件。聚焦爬蟲的工作流程較為復雜,需要根據一定的網頁分析算法過濾與主題無關的鏈接,保留有用的鏈接并將其放入等待抓取的URL隊列。然后,它將根據一定的搜索策略從隊列中選擇下一步要抓取的網頁URL,并重復上述過程,直到達到系統的某一條件時停止。此外,所有被爬蟲抓取的網頁將會被系統存貯,進行一定的分析、過濾,并建立索引,以便之后的查詢和檢索。
發明內容
為克服傳統網絡爬蟲技術的采用固定搜索策略,缺乏適應性的缺點,本發明提出的方法可滿足客戶多種需求、實現實時更新數據的爬蟲技術。
本發明公開的方法由五個模塊組成,分別是socket功能模塊、http功能模塊、正則表達式功能模塊、深度搜索功能模塊、廣度搜索功能模塊。
所述Socket功能模塊,是網絡爬蟲依賴的背景知識,存在于知識管理系統的結構中,客戶通過socket套接字與服務端建立起連接;
所述http功能模塊,客戶端必須定義一組URL來確定要瀏覽的地址,當客戶機與服務器建立連接后,發送一個請求給服務器如果服務器接到請求后,給予相應的響應信息,這樣就可以將網頁上代碼提取出來;
所述正則表達式功能模塊,正則表達式描述了一種字符串匹配的模式,可以用來檢查一個串是否含有某種子串、將匹配的子串做替換或者從某個串中取出符合某個條件的子串等。客戶端接收到服務端網頁上代碼后,正則表達式作為一個模板,將URL字符模式與所搜索的字符串進行匹配,然后將相應的URL提取出來;
所述深度搜索功能模塊,本發明方法開始時對網頁上的所有URL均未曾訪問過。通過正則表達式在網頁提取出來的第一個URL為初始出發點S,并將其標記為已訪問過;然后依次從S出發搜索S相連接的網頁的鏈接地址W。若W未曾訪問過,則以W為新的出發點繼續進行深度優先遍歷,直至滿足用戶的需求。若此時仍有未訪問的頂點,則另選一個尚未訪問的頂點作為新的源點重復上述過程,直至在滿足用戶需求的前提下將網頁中所有頂點均已被訪問為止。
所述廣度搜索功能模塊,本發明開始時對網頁上的所有URL均未曾訪問過。爬蟲從初始頁面p0的URL開始,通過正則表達式檢索頁面p0并抽取頁面中的所有URL,將它們添加到URL隊列中。然后,爬蟲按某種次序從隊列中獲得URL,重復上述過程,直到滿足客戶端的要求。
附圖說明
附圖主要是用于提供對本發明進一步的理解。附圖示出了本發明的實施例,并與本說明書一起起到解釋本發明原理的作用。附圖中:
圖1示意性地示出了本發明的流程圖。
具體實施方式
以下結合附圖詳細描述本發明的技術方案。
在圖1所示的實施例中,
本發明公開的方法由五個模塊組成,分別是socket功能模塊(1)、http功能模塊(2)、正則表達式功能模塊(3)、深度搜索功能模塊(4)、廣度搜索功能模塊(5)。
所述Socket功能模塊(1),是網絡爬蟲依賴的背景知識,存在于知識管理系統的結構中,客戶通過socket套接字與服務端建立起連接;
所述http功能模塊(2),客戶端必須定義一組URL來確定要瀏覽的地址,當客戶機與服務器建立連接后,發送一個請求給服務器如果服務器接到請求后,給予相應的響應信息,這樣就可以將網頁上代碼提取出來;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海博騰信息科技有限公司,未經上海博騰信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210211633.8/2.html,轉載請聲明來源鉆瓜專利網。





