關於網路爬蟲的資料整合
關於通用爬蟲的介紹
前言:
我們生活在一個充滿資料的時代。
每天,來自商業、社會以及我們的日常生活所產生「影象、音訊、視訊、文字、定位資訊」等各種各樣的海量資料,注入到我們的全球資訊網(WWW)、計算機和各種資料儲存裝置,其中全球資訊網則是最大的資訊載體。
資料的爆炸式增長、規模龐大和廣泛可用的資料,使得我們真正進入到了“大資料(Big Data)時代”。我們急需功能強大的資料處理技術(Data Technology),從這些海量資料中發現有價值的資訊。
網路爬蟲(Web Crawler)技術,則成為了當下全球資訊網資料(Web Data)收集中,最為高效靈活的解決方案。
什麼是網路爬蟲?
網路爬蟲
獲取資料方式主要有哪些?
1:企業產生的資料:百度搜索指數、騰訊公司業績資料、阿里巴巴集團財務及運營資料、新浪微博微指數等....
大型網際網路公司擁有海量使用者,有天然的資料積累優勢,還有一些有資料意識的中小型企業,也開始積累自己的資料。
2:資料平臺購買資料:資料堂、國雲資料市場、貴陽大資料交易所 等...
在各個資料交易平臺上購買各行各業各種型別的資料,根據資料資訊、獲取難易程度的不同,價格也會有所不同。
3:政府/機構公開的資料:中華人民共和國國家統計局資料、中國人民銀行調查統計、世界銀行公開資料、聯合國資料、納斯達克、新浪財經美股實時行情 等...
通常都是各地征服統計上報,或者是行業內專業的網站、機構等提供。
4:資料管理諮詢公司:
通常這樣的公司有很龐大的資料團隊,一般通過市場調研、問卷調查、固定的樣本檢測、與各行各業的其他公司合作、專家對話來獲取資料,並根據客戶需求制定商業解決方案。
5:爬蟲爬取網路資料:
如果資料市場上沒有需要的資料,或者價格太高不願意購買,那麼可以利用爬蟲技術,抓取網站上的資料。
通用爬蟲:
通用網路爬蟲 就是 捜索引擎抓取系統,目的是將網際網路上的所有的網頁下載到本地,形成一個網際網路內容的映象備份。
它決定著整個搜尋引擎內容的豐富性和時效性,因此它的效能優劣直接影響著搜尋引擎的效果。
通用搜索引擎(Search Engine)工作原理
第一步:抓取網頁
搜尋引擎網路爬蟲的基本工作流程如下:
- 首先選取一部分的初始URL,將這些URL放入 待抓取URL佇列 ;
- 取出待抓取URL,解析DNS得到主機的IP,並將URL對應的網頁下載下來,儲存進已下載網頁庫中,並且將這些URL放進 已抓取URL佇列 。
- 分析網頁中包含的其他URL,並且將URL放入 待抓取URL佇列,從而進入下一個迴圈....
PS : 搜尋引擎如何獲取一個新網站的URL:
- 新網站向搜尋引擎主動提交網址:(如百度http://zhanzhang.baidu.com/linksubmit/url)
- 在其他網站上設定新網站外鏈(儘可能處於搜尋引擎爬蟲爬取範圍)
- 搜尋引擎和DNS解析服務商(如DNSPod等)合作,新網站域名將被迅速抓取。
網站的Robots協議
搜尋引擎蜘蛛跟進URL抓取時,它需要遵從一些命令或檔案的內容,如標註為nofollow的連結,或者是網站的Robots協議。
Robots協議(也叫爬蟲協議、機器人協議等),全稱是“網路爬蟲排除標準”(Robots Exclusion Protocol),網站通過Robots協議告訴搜尋引擎哪些頁面可以抓取,哪些頁面不能抓取,例如:
淘寶網:https://www.taobao.com/robots.txt
騰訊網: http://www.qq.com/robots.txt
第二步:資料儲存
搜尋引擎爬蟲爬取到的網頁,將存入原始頁面資料庫,頁面和使用者瀏覽器得到的HTML是完全一樣的。
搜尋引擎爬蟲在抓取頁面時,也做一定的重複內容檢測,一旦遇到訪問權重很低的網站上有大量抄襲、採集或者複製的內容,很可能就不再爬行。
第三步:預處理
搜尋引擎將爬蟲抓取回來的頁面,進行各種步驟的預處理。
- 提取文字
- 中文分詞
- 消除噪音(比如版權宣告文字、導航條、廣告等……)
- 索引處理
- 特殊檔案處理
除了HTML檔案外,搜尋引擎通常還能抓取和索引以文字為基礎的多種檔案型別,如 PDF、Word、WPS、XLS、PPT、TXT 檔案等。我們在搜尋結果中也經常會看到這些檔案型別。
但搜尋引擎還不能處理圖片、視訊、Flash 這類非文字內容,也不能執行指令碼和程式。
第四步:提供檢索服務,網站排名
搜尋引擎在對資訊進行組織和處理後,為使用者提供關鍵字檢索服務,將使用者檢索相關的資訊展示給使用者。
同時會根據頁面的PageRank值(連結的訪問量排名)來進行網站排名,這樣Rank值高的網站在搜尋結果中會排名較前,當然也可以直接使用 Money 購買搜尋引擎網站排名,簡單粗暴。
完整流程圖:
但是,這些通用性搜尋引擎也存在著一定的侷限性:
- 通用搜索引擎所返回的結果都是網頁,而大多情況下,網頁裡90%的內容對使用者來說都是無用的。
- 不同領域、不同背景的使用者往往具有不同的檢索目的和需求,搜尋引擎無法提供針對具體某個使用者的搜尋結果。
- 全球資訊網資料形式的豐富和網路技術的不斷髮展,圖片、資料庫、音訊、視訊多媒體等不同資料大量出現,通用搜索引擎對這些檔案無能為力,不能很好地發現和獲取。
- 通用搜索引擎大多提供基於關鍵字的檢索,難以支援根據語義資訊提出的查詢,無法準確理解使用者的具體需求。
本文最終解釋權歸本文作者所有,未經允許不得私自轉載