資料采集過程介紹
- 簡介
-
- 網站頁面分析(AnalyseSite Page)
- 連結抽取(Extract URL)
- 連結過濾(Filt URL)
- 内容抽取(Extract Content)
- 爬取URL隊列(Crawl URL Queue)
- 資料(Data)
- 資料的總體采集過程如下:
簡介
網絡資料多種多樣、組成複雜,對于不同的目的有不同的利用價值和使用方式,是以網絡資料的利用必須經過再次地采集和篩選過程,才能從龐大而又雜亂的資料中挖掘出有價值的資料。本文簡單地介紹一下網絡資料采集的過程,其中主要可以分為如下六個主要子產品。
網站頁面分析(AnalyseSite Page)
先進入目标網站,分析要爬取網頁上的全部内容,主要目的是分析網站的結構,找到目标資料所在的位置,并設計好最高效的爬取方法。
連結抽取(Extract URL)
從網頁的内容中抽取出備選連結。
連結過濾(Filt URL)
根據制定的過濾規則選擇連結,并過濾掉已經爬取過的連結。
内容抽取(Extract Content)
從網頁中抽取目标内容。
爬取URL隊列(Crawl URL Queue)
為爬蟲提供需要爬取的網頁連結。
資料(Data)
包含三個方面
Site URL: 需要抓取資料網站的URL資訊。
Spider URL: 已經抓取過資料的網頁URL資訊。
Spider Content: 經過抓取的網頁内容。
資料的總體采集過程如下:
(1)先在URL隊列中寫入一個或多個目标連結作為爬蟲爬取資訊的起點。
(2)爬蟲從URL隊列中讀取連結,并通路該網站。
(3)從網站中爬取内容。
(4)從網頁内容中抽取出目标資料和所有URL連結。
(5)從資料庫中讀取已經抓取過内容的網頁位址。
(6)過濾URL。将目前隊列中的URL和已經抓取過的URL進行比較。
(7)如果該網頁位址沒有被抓取過,則将該位址(Spider URL)寫入資料庫,并通路該網站;如果該位址已經被抓取過,則放棄對這個位址的抓取操作。
(8)擷取該位址的網頁内容,并抽取出所需要屬性的内容值。
(9)将抽取的網頁内容寫入資料庫,并将抓取到的新連結加入到URL隊列。
這些過程使我們可以通過一個網絡入口經由網站間的互相連結關系爬取盡可能多的資料,比使用浏覽器抓取資料的效率高得多。(有的時候,爬取資料不總是一件好事,很多網站就因為大量爬蟲增加了伺服器通路的負擔而苦惱不已,實際應用中還可能會涉及版權和隐私等問題。爬蟲雖好,但請慎用。)