什么是網(wǎng)絡(luò)爬蟲?有什么用?怎么爬?終于有人講明白了_第1頁(yè)
什么是網(wǎng)絡(luò)爬蟲?有什么用?怎么爬?終于有人講明白了_第2頁(yè)
什么是網(wǎng)絡(luò)爬蟲?有什么用?怎么爬?終于有人講明白了_第3頁(yè)
什么是網(wǎng)絡(luò)爬蟲?有什么用?怎么爬?終于有人講明白了_第4頁(yè)
什么是網(wǎng)絡(luò)爬蟲?有什么用?怎么爬?終于有人講明白了_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

什么是網(wǎng)絡(luò)爬?有什么用?怎么爬?終于有講明白了01什是網(wǎng)絡(luò)爬蟲隨著大數(shù)據(jù)時(shí)代的來臨,網(wǎng)絡(luò)爬蟲在互聯(lián)網(wǎng)中的地位將越來越重要?;ヂ?lián)網(wǎng)中的數(shù)據(jù)是海量的如何自動(dòng)高效地獲取互聯(lián)網(wǎng)中我們感興趣的信息并為我們所用是一個(gè)重要的問題,而爬蟲技術(shù)就是為了決這些問題而生的。我們感興趣的信息分為不同的類型:如果只是做搜索引擎,那么感興趣的信息就是互聯(lián)網(wǎng)中盡能多的高質(zhì)量網(wǎng)頁(yè);如果要獲取某一垂直領(lǐng)域的數(shù)據(jù)或者有明確的檢索需求,那么感興趣的信息就是根我們的檢索和需求所定位的這些信息,此時(shí),需要過濾掉一些無用信息。前者我們稱為通用網(wǎng)絡(luò)爬蟲,者我們稱為聚焦網(wǎng)絡(luò)爬蟲。初網(wǎng)絡(luò)爬蟲網(wǎng)絡(luò)爬蟲又稱網(wǎng)絡(luò)蜘蛛、網(wǎng)絡(luò)螞蟻、網(wǎng)絡(luò)機(jī)器人等,可以自動(dòng)化瀏覽網(wǎng)絡(luò)中的信息,當(dāng)然瀏覽息的時(shí)候需要按照我們制定的規(guī)則進(jìn)行,這些規(guī)則我們稱之為網(wǎng)絡(luò)爬蟲算法。使用ython可很方便地編寫出爬蟲程序,進(jìn)行互聯(lián)網(wǎng)信息的自動(dòng)化檢索。搜索引擎離不開爬蟲,比如百度搜索引擎的爬蟲叫作百度蜘蛛)百度蜘蛛每天會(huì)在海的互聯(lián)網(wǎng)信息中進(jìn)行爬取,爬取優(yōu)質(zhì)信息并收錄,當(dāng)用戶在百度搜索引擎上檢索對(duì)應(yīng)關(guān)鍵詞時(shí),百將對(duì)關(guān)鍵詞進(jìn)行分析處理,從收錄的網(wǎng)頁(yè)中找出相關(guān)網(wǎng)頁(yè),按照一定的排名規(guī)則進(jìn)行排序并將結(jié)果展現(xiàn)用戶。在這個(gè)過程中,百度蜘蛛起到了至關(guān)重要的作用。那么,如何覆蓋互聯(lián)網(wǎng)中更多的優(yōu)質(zhì)網(wǎng)頁(yè)?如何篩選這些重復(fù)的頁(yè)面?這些都是由百度蜘蛛爬蟲的算法決定的。采用不同的算法,爬蟲的運(yùn)行效率不同,爬取結(jié)果也會(huì)有所差異。所以,我們?cè)谘芯颗老x的時(shí)候,不僅要了解爬蟲如何實(shí)現(xiàn),還需要知道一些常見爬蟲的算法,果有必要,我們還需要自己去制定相應(yīng)的算法,在此,我們僅需要對(duì)爬蟲的概念有一個(gè)基本的了解。除了百度搜索引擎離不開爬蟲以外,其他搜索引擎也離不開爬蟲,它們也擁有自己的爬蟲。比360的爬蟲叫,搜狗的爬蟲叫,必的爬蟲叫Bingbot。如果想自己實(shí)現(xiàn)一款小型的搜索引擎,我們也可以編寫出自己的爬蟲去實(shí)現(xiàn),當(dāng)然,雖然可能性能或者算法上比不上主流的搜索引擎,但是個(gè)性化的程度會(huì)非常高,并且也有利于我們更深層次地理搜索引擎內(nèi)部的工作原理。大數(shù)據(jù)時(shí)代也離不開爬蟲,比如在進(jìn)行大數(shù)據(jù)分析或數(shù)據(jù)挖掘時(shí),我們可以去一些比較大型的方站點(diǎn)下載數(shù)據(jù)源。但這些數(shù)據(jù)源比較有限,那么如何才能獲取更多更高質(zhì)量的數(shù)據(jù)源呢?此時(shí),我們以編寫自己的爬蟲程序,從互聯(lián)網(wǎng)中進(jìn)行數(shù)據(jù)信息的獲取。所以在未來,爬蟲的地位會(huì)越來越重要。為么要學(xué)網(wǎng)絡(luò)蟲我們初步認(rèn)識(shí)了網(wǎng)絡(luò)爬蟲,但是為什么要學(xué)習(xí)網(wǎng)絡(luò)爬蟲呢?要知道,只有清晰地知道我們的學(xué)目的,才能夠更好地學(xué)習(xí)這一項(xiàng)知識(shí),我們將會(huì)為大家分析一下學(xué)習(xí)網(wǎng)絡(luò)爬蟲的原因。當(dāng)然,不同的人學(xué)習(xí)爬蟲,可能目的有所不同,在此,我們總結(jié)了種見的學(xué)習(xí)爬蟲的原因。1學(xué)爬蟲可以私人制一個(gè)搜索引擎且可以對(duì)搜索引擎的數(shù)據(jù)采集工作原理進(jìn)更深層次地理解。有的朋友希望能夠深層次地了解搜索引擎的爬蟲工作原理,或者希望自己能夠開發(fā)出一款私人索引擎,那么此時(shí),學(xué)習(xí)爬蟲是非常有必要的。簡(jiǎn)單來說,我們學(xué)會(huì)了爬蟲編寫之后,就可以利用爬蟲自動(dòng)地采集互聯(lián)網(wǎng)中的信息,采集回來進(jìn)行相應(yīng)的存儲(chǔ)或處理,在需要檢索某些信息的時(shí)候,只需在采集回來的信息中進(jìn)行檢索,即實(shí)現(xiàn)了私的搜索引擎。當(dāng)然,信息怎么爬取、怎么存儲(chǔ)、怎么進(jìn)行分詞、怎么進(jìn)行相關(guān)性計(jì)算等,都是需要我們進(jìn)行計(jì)的,爬蟲技術(shù)主要解決信息爬取的問題。2)大數(shù)據(jù)時(shí)代,要進(jìn)數(shù)據(jù)分析,首先要有數(shù)據(jù)源,而學(xué)習(xí)爬蟲,可以讓我們獲取更的數(shù)據(jù)源,并且這些數(shù)據(jù)源可以按我們的目的進(jìn)行采集,去掉很多無關(guān)數(shù)據(jù)。在進(jìn)行大數(shù)據(jù)分析或者進(jìn)行數(shù)據(jù)挖掘的時(shí)候,數(shù)據(jù)源可以從某些提供數(shù)據(jù)統(tǒng)計(jì)的網(wǎng)站獲得,也以從某些文獻(xiàn)或內(nèi)部資料中獲得,但是這些獲得數(shù)據(jù)的方式,有時(shí)很難滿足我們對(duì)數(shù)據(jù)的需求,而手動(dòng)互聯(lián)網(wǎng)中去尋找這些數(shù)據(jù),則耗費(fèi)的精力過大。此時(shí)就可以利用爬蟲技術(shù),自動(dòng)地從互聯(lián)網(wǎng)中獲取我們感興趣的數(shù)據(jù)內(nèi)容,并將這些數(shù)據(jù)內(nèi)容取回來,作為我們的數(shù)據(jù)源,從而進(jìn)行更深層次的數(shù)據(jù)分析,并獲得更多有價(jià)值的信息。3)對(duì)于很多從者說,學(xué)習(xí)爬蟲,可以更深層次地理解搜索引擎爬蟲的工作原理,而可以更好地進(jìn)行搜索引擎優(yōu)化。既然是搜索引擎優(yōu)化,那么就必須要對(duì)搜索引擎的工作原理非常清楚,同時(shí)也需要掌握搜索引爬蟲的工作原理,這樣在進(jìn)行搜索引擎優(yōu)化時(shí),才能知己知彼,百戰(zhàn)不殆。4)從就業(yè)的角度來說,爬蟲工程師目前來說屬于緊缺人才,并且薪資待遇普遍較高,所以,深層次掌握這門技術(shù),對(duì)于就業(yè)來說,是非常有利的。有些朋友學(xué)習(xí)爬蟲可能為了就業(yè)或者跳槽。從這個(gè)角度來說,爬蟲工程師方向是不錯(cuò)的選擇之,因?yàn)槟壳芭老x工程師的需求越來越大,而能夠勝任這方面崗位的人員較少,所以屬于一個(gè)比較緊缺的業(yè)方向,并且隨著大數(shù)據(jù)時(shí)代的來臨,爬蟲技術(shù)的應(yīng)用將越來越廣泛,在未來會(huì)擁有很好的發(fā)展空間。除了以上為大家總結(jié)的種常見的學(xué)習(xí)爬蟲的原因外,可能你還有一些其他學(xué)習(xí)爬蟲的原因,總之,不管是什么原因,理清自己學(xué)習(xí)的目的,就可以更好地去研究一門知識(shí)技術(shù),并堅(jiān)持下來。網(wǎng)爬蟲的組成接下來,我們將介紹網(wǎng)絡(luò)爬蟲的組成。網(wǎng)絡(luò)爬蟲由控制節(jié)點(diǎn)、爬蟲節(jié)點(diǎn)、資源庫(kù)構(gòu)成。圖1-1所示是網(wǎng)絡(luò)爬蟲的控制節(jié)點(diǎn)和爬蟲節(jié)點(diǎn)的結(jié)構(gòu)關(guān)系?!鴪D1-1網(wǎng)爬蟲的控制節(jié)點(diǎn)和爬蟲節(jié)的結(jié)構(gòu)關(guān)系可以看到,網(wǎng)絡(luò)爬蟲中可以有多個(gè)控制節(jié)點(diǎn),每個(gè)控制節(jié)點(diǎn)下可以有多個(gè)爬蟲節(jié)點(diǎn),控制節(jié)點(diǎn)間可以互相通信,同時(shí),控制節(jié)點(diǎn)和其下的各爬蟲節(jié)點(diǎn)之間也可以進(jìn)行互相通信,屬于同一個(gè)控制節(jié)點(diǎn)的各爬蟲節(jié)點(diǎn)間,亦可以互相通信??刂乒?jié)點(diǎn),也叫作爬蟲的中央控制器,主要負(fù)責(zé)根據(jù)RL地址分配線程,并調(diào)用爬蟲節(jié)點(diǎn)進(jìn)行具體的爬行。爬蟲節(jié)點(diǎn)會(huì)按照相關(guān)的算法,對(duì)網(wǎng)頁(yè)進(jìn)行具體的爬行,主要包括下載網(wǎng)頁(yè)以及對(duì)網(wǎng)頁(yè)的文本進(jìn)處理,爬行后,會(huì)將對(duì)應(yīng)的爬行結(jié)果存儲(chǔ)到對(duì)應(yīng)的資源庫(kù)中。網(wǎng)爬蟲的類型現(xiàn)在我們已經(jīng)基本了解了網(wǎng)絡(luò)爬蟲的組成,那么網(wǎng)絡(luò)爬蟲具體有哪些類型呢?網(wǎng)絡(luò)爬蟲按照實(shí)現(xiàn)的技術(shù)和結(jié)構(gòu)可以分為通用網(wǎng)絡(luò)爬蟲、聚焦網(wǎng)絡(luò)爬蟲、增量式網(wǎng)絡(luò)爬蟲、深網(wǎng)絡(luò)爬蟲等類型。在實(shí)際的網(wǎng)絡(luò)爬蟲中,通常是這幾類爬蟲的組合體。4.1通用網(wǎng)絡(luò)爬蟲首先我們?yōu)榇蠹医榻B通用網(wǎng)絡(luò)爬蟲GeneralPurposeWeb。通用網(wǎng)絡(luò)爬蟲又叫作全網(wǎng)爬蟲,顧名思義,通用網(wǎng)絡(luò)爬蟲爬取的目標(biāo)資源在全互聯(lián)網(wǎng)中。通用網(wǎng)絡(luò)爬蟲所爬取的目標(biāo)數(shù)據(jù)是巨大的,并且爬行的范圍也是非常大的,正是由于其爬取的據(jù)是海量數(shù)據(jù),故而對(duì)于這類爬蟲來說,其爬取的性能要求是非常高的。這種網(wǎng)絡(luò)爬蟲主要應(yīng)用于大型索引擎中,有非常高的應(yīng)用價(jià)值。通用網(wǎng)絡(luò)爬蟲主要由初始集合、URL隊(duì)、頁(yè)面爬行模塊頁(yè)面分析模塊、頁(yè)面數(shù)據(jù)庫(kù)、鏈接過濾模塊等構(gòu)成。通用網(wǎng)絡(luò)爬蟲在爬行的時(shí)候會(huì)采取一定的爬行策略,主要有深度優(yōu)先爬行策略和廣優(yōu)先爬行策略。4.2聚焦網(wǎng)絡(luò)爬蟲聚焦網(wǎng)絡(luò)爬蟲Focused)也叫主題網(wǎng)絡(luò)爬蟲,顧名思義,聚焦網(wǎng)絡(luò)爬蟲是按照預(yù)先定義好的主有選擇地進(jìn)行網(wǎng)頁(yè)爬取的一種爬蟲,聚焦網(wǎng)絡(luò)爬蟲不像通用網(wǎng)絡(luò)爬蟲一樣將目標(biāo)資源定位在全互網(wǎng)中,而是將爬取的目標(biāo)網(wǎng)頁(yè)定位在與主題相關(guān)的頁(yè)面中,此時(shí),可以大大節(jié)省爬蟲爬取時(shí)所需的帶寬源和服務(wù)器資源。聚焦網(wǎng)絡(luò)爬蟲主要應(yīng)用在對(duì)特定信息的爬取中,主要為某一類特定的人群提供服務(wù)。聚焦網(wǎng)絡(luò)爬蟲主要由初始集合、URL隊(duì)、頁(yè)面爬行模塊頁(yè)面分析模塊、頁(yè)面數(shù)據(jù)庫(kù)、鏈接過濾模塊、內(nèi)容評(píng)價(jià)模塊、鏈接評(píng)價(jià)模塊等構(gòu)成。內(nèi)容評(píng)價(jià)模塊可以評(píng)價(jià)內(nèi)容的重要性,同理,鏈接價(jià)模塊也可以評(píng)價(jià)出鏈接的重要性,然后根據(jù)鏈接和內(nèi)容的重要性,可以確定哪些頁(yè)面優(yōu)先訪問。聚焦網(wǎng)絡(luò)爬蟲的爬行策略主要有種,即基于內(nèi)容評(píng)價(jià)的爬行策略、基于鏈接評(píng)價(jià)的爬行策略、基于增強(qiáng)學(xué)習(xí)的爬行策略和基于語(yǔ)境圖的爬行策略。關(guān)于聚焦網(wǎng)絡(luò)爬蟲具體的爬行策略,我們將在下文進(jìn)行詳細(xì)分析。4.3增量式網(wǎng)絡(luò)爬蟲增量式網(wǎng)絡(luò)爬蟲IncrementalWeb),所謂增量式,對(duì)應(yīng)著增量式更新。增量式更新指的是在更新的時(shí)候只更新改變的地方,而未改變的地方則不更新,所以增量式網(wǎng)爬蟲,在爬取網(wǎng)頁(yè)的時(shí)候,只爬取內(nèi)容發(fā)生變化的網(wǎng)頁(yè)或者新產(chǎn)生的網(wǎng)頁(yè),對(duì)于未發(fā)生內(nèi)容變化的網(wǎng)頁(yè)則不會(huì)爬取。增量式網(wǎng)絡(luò)爬蟲在一定程度上能夠保證所爬取的頁(yè)面,盡可能是新頁(yè)面。4.4深層網(wǎng)絡(luò)爬蟲深層網(wǎng)絡(luò)爬蟲(DeepWeb),可以爬取互聯(lián)中的深層頁(yè)面,在此我們首先需要了解深層頁(yè)面的概念。在互聯(lián)網(wǎng)中,網(wǎng)頁(yè)按存在方式分類,可以分為表層頁(yè)面和深層頁(yè)面。所謂的表層頁(yè)面,指的是需要提交表單,使用靜態(tài)的鏈接就能夠到達(dá)的靜態(tài)頁(yè)面;而深層頁(yè)面則隱藏在表單后面,不能通過靜態(tài)接直接獲取,是需要提交一定的關(guān)鍵詞之后才能夠獲取得到的頁(yè)面。在互聯(lián)網(wǎng)中,深層頁(yè)面的數(shù)量往往比表層頁(yè)面的數(shù)量要多很多,故而,我們需要想辦法爬取深頁(yè)面。爬取深層頁(yè)面,需要想辦法自動(dòng)填寫好對(duì)應(yīng)表單,所以,深層網(wǎng)絡(luò)爬蟲最重要的部分即為表單寫部分。深層網(wǎng)絡(luò)爬蟲主要由URL列表LVS列(指是標(biāo)簽數(shù)集合即填充表單的數(shù)據(jù)源爬行控制器、解析器、控器、表單分析器、表單處理器、響應(yīng)分析器等部分構(gòu)成。深層網(wǎng)絡(luò)爬蟲表單的填寫有兩種類型:第一種是基于領(lǐng)域知識(shí)的表單填寫,簡(jiǎn)單來說就是建立一個(gè)填寫表單的關(guān)鍵詞庫(kù),在需要填寫時(shí)候,根據(jù)語(yǔ)義分析選擇對(duì)應(yīng)的關(guān)鍵詞進(jìn)行填寫;第二種是基于網(wǎng)頁(yè)結(jié)構(gòu)分析的表單填寫,簡(jiǎn)單來說,這種填寫方式一般是領(lǐng)域知識(shí)有限的情況使用,這種方式會(huì)根據(jù)網(wǎng)頁(yè)結(jié)構(gòu)進(jìn)行分析,并自動(dòng)地進(jìn)行表單填寫。以上,為大家介紹了網(wǎng)絡(luò)爬蟲中常見的幾種類型,希望讀者能夠?qū)W(wǎng)絡(luò)爬蟲的分類有一個(gè)基本了解。爬擴(kuò)展——聚焦爬蟲由于聚焦爬蟲可以按對(duì)應(yīng)的主題有目的地進(jìn)行爬取,并且可以節(jié)省大量的服務(wù)器資源和帶寬資,具有很強(qiáng)的實(shí)用性,所以在此,我們將對(duì)聚焦爬蟲進(jìn)行詳細(xì)講解。所為聚焦爬蟲運(yùn)行的流程,熟悉該流程后,我們可以更清晰地知道聚焦爬蟲的工作原理和過程?!鴪D1-2聚爬蟲運(yùn)行的流程首先,聚焦爬蟲擁有一個(gè)控制中心,該控制中心負(fù)責(zé)對(duì)整個(gè)爬蟲系統(tǒng)進(jìn)行管理和監(jiān)控,主要包控制用戶交互、初始化爬行器、確定主題、協(xié)調(diào)各模塊之間的工作、控制爬行過程等方面。然后,將初始的URL集傳遞給URL列,頁(yè)面爬行模塊會(huì)從URL列中讀取第一批URL列表,然后根據(jù)這些URL地從互聯(lián)網(wǎng)中進(jìn)行相應(yīng)的頁(yè)面爬取。爬取后,將爬取到的內(nèi)容傳到頁(yè)面數(shù)據(jù)庫(kù)中存儲(chǔ),同時(shí),在爬行過程中,會(huì)爬取到一些新,此時(shí),需要根據(jù)我們所定的主題使用鏈接過濾模塊過濾掉無關(guān)鏈接,再將剩下來的鏈接根據(jù)主題使用鏈接評(píng)價(jià)模塊或內(nèi)容評(píng)價(jià)模塊進(jìn)行優(yōu)先級(jí)的排序。完成后,將新的URL地傳遞到URL隊(duì)中,供頁(yè)面爬行模塊使用。另一方面,將頁(yè)面爬取并存放到頁(yè)面數(shù)據(jù)庫(kù)后,需要根據(jù)主題使用頁(yè)面分析模塊對(duì)爬取到的頁(yè)進(jìn)行頁(yè)面分析處理,并根據(jù)處理結(jié)果建立索引數(shù)據(jù)庫(kù),用戶檢索對(duì)應(yīng)信息時(shí),可以從索引數(shù)據(jù)庫(kù)中進(jìn)行應(yīng)的檢索,并得到對(duì)應(yīng)的結(jié)果。這就是聚焦爬蟲的主要工作流程,了解聚焦爬蟲的主要工作流程有助于我們編寫聚焦爬蟲,使寫的思路更加清晰。02網(wǎng)絡(luò)爬蟲技能總覽在上文中,我們已經(jīng)初步認(rèn)識(shí)了網(wǎng)絡(luò)爬蟲,那么網(wǎng)絡(luò)爬蟲具體能做些什么呢?用網(wǎng)絡(luò)爬蟲又能哪些有趣的事呢?在本章中我們將為大家具體講解。網(wǎng)爬蟲技能總圖如圖2-1所,我們總結(jié)了網(wǎng)絡(luò)爬蟲的用功能?!鴪D2-1網(wǎng)爬蟲技能示意圖在圖2-1中以看到網(wǎng)爬蟲可以代手工做很多事情如可以用于做搜索引擎也可以爬取網(wǎng)站上的圖片,比如有些朋友將某些網(wǎng)站上的圖片全部爬取下來,集中進(jìn)行瀏覽,同時(shí),網(wǎng)絡(luò)爬蟲也以用于金融投資領(lǐng)域,比如可以自動(dòng)爬取一些金融信息,并進(jìn)行投資分析等。有時(shí),我們比較喜歡的新聞網(wǎng)站可能有幾個(gè),每次都要分別打開這些新聞網(wǎng)站進(jìn)行瀏覽,比較煩。此時(shí)可以利用網(wǎng)絡(luò)爬蟲,將這多個(gè)新聞網(wǎng)站中的新聞信息爬取下來,集中進(jìn)行閱讀。有時(shí),我們?cè)跒g覽網(wǎng)頁(yè)上的信息的時(shí)候,會(huì)發(fā)現(xiàn)有很多廣告。此時(shí)同樣可以利用爬蟲將對(duì)應(yīng)網(wǎng)上的信息爬取過來,這樣就可以自動(dòng)的過濾掉這些廣告,方便對(duì)信息的閱讀與使用。有時(shí),我們需要進(jìn)行營(yíng)銷,那么如何找到目標(biāo)客戶以及目標(biāo)客戶的聯(lián)系方式是一個(gè)關(guān)鍵問題。們可以手動(dòng)地在互聯(lián)網(wǎng)中尋找,但是這樣的效率會(huì)很低。此時(shí),我們利用爬蟲,可以設(shè)置對(duì)應(yīng)的規(guī)則,動(dòng)地從互聯(lián)網(wǎng)中采集目標(biāo)用戶的聯(lián)系方式等數(shù)據(jù),供我們進(jìn)行營(yíng)銷使用。有時(shí),我們想對(duì)某個(gè)網(wǎng)站的用戶信息進(jìn)行分析,比如分析該網(wǎng)站的用戶活躍度、發(fā)言數(shù)、熱門章等信息,如果我們不是網(wǎng)站管理員,手工統(tǒng)計(jì)將是一個(gè)非常龐大的工程。此時(shí),可以利用爬蟲輕松將這數(shù)據(jù)采集到,以便進(jìn)行進(jìn)一步分析,而這一切爬取的操作,都是自動(dòng)進(jìn)行的,我們只需要編寫好對(duì)應(yīng)的蟲,并設(shè)計(jì)好對(duì)應(yīng)的規(guī)則即可。除此之外,爬蟲還可以實(shí)現(xiàn)很多強(qiáng)大的功能??傊老x的出現(xiàn),可以在一定程度上代替手工問網(wǎng)頁(yè),從而,原先我們需要人工去訪問互聯(lián)網(wǎng)信息的操作,現(xiàn)在都可以用爬蟲自動(dòng)化實(shí)現(xiàn),這樣可以高效率地利用好互聯(lián)網(wǎng)中的有效信息。搜引擎核心爬蟲與搜索引擎的關(guān)系是密不可分的,既然提到了網(wǎng)絡(luò)爬蟲,就免不了提到搜索引擎,在此,們將對(duì)搜索引擎的核心技術(shù)進(jìn)行一個(gè)簡(jiǎn)單的講解。圖2-2所示為搜索引擎的核心工作流程先搜引擎會(huì)利用蟲模塊去爬取互聯(lián)網(wǎng)中的網(wǎng)頁(yè)然后將爬取到的網(wǎng)頁(yè)存儲(chǔ)在原始數(shù)據(jù)庫(kù)中。爬蟲模塊主要包括控制器和爬行器,控制器主要進(jìn)行爬行的制,爬行器則負(fù)責(zé)具體的爬行任務(wù)。然后,會(huì)對(duì)原始數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行索引,并存儲(chǔ)到索引數(shù)據(jù)庫(kù)中。當(dāng)用戶檢索信息的時(shí)候,會(huì)通過用戶交互接口輸入對(duì)應(yīng)的信息,用戶交互接口相當(dāng)于搜索引擎輸入框,輸入完成之后,由檢索器進(jìn)行分詞等操作,檢索器會(huì)從索引數(shù)據(jù)庫(kù)中獲取數(shù)據(jù)進(jìn)行相應(yīng)的檢索理。用戶輸入對(duì)應(yīng)信息的同時(shí),會(huì)將用戶的行為存儲(chǔ)到用戶日志數(shù)據(jù)庫(kù)中,比如用戶的IP地址、用戶所輸入的關(guān)鍵詞等等。隨后,用戶日志數(shù)據(jù)庫(kù)中的數(shù)據(jù)會(huì)交由日志分析器進(jìn)行處理。日志分析器會(huì)根據(jù)量的用戶數(shù)據(jù)去調(diào)整原始數(shù)據(jù)庫(kù)和索引數(shù)據(jù)庫(kù),改變排名結(jié)果或進(jìn)行其他操作。▲圖2-2搜引擎的核心工作流程以上就是搜索引擎核心工作流程的簡(jiǎn)要概述,可能大家對(duì)索引和檢索的概念還不太能區(qū)分,在我為大家詳細(xì)講一下。簡(jiǎn)單來說,檢索是一種行為,而索引是一種屬性。比如一家超市,里面有大量的商品,為了能快速地找到這些商品,我們會(huì)將這些商品進(jìn)行分組,比如有日常用品類商品、飲料類商品、服裝類商品組別,此時(shí),這些商品的組名我們稱之為索引,索引由索引器控制。如果,有一個(gè)用戶想要找到某一個(gè)商品,那么需要在超市的大量商品中尋找,這個(gè)過程,我們之為檢索。如果有一個(gè)好的索引,則可以提高檢索的效率;若沒有索引,則檢索的效率會(huì)很低。比如,一個(gè)超市里面的商品如果沒有進(jìn)行分類,那么用戶要在海量的商品中尋找某一種商品,會(huì)比較費(fèi)力。用爬蟲的那些兒用戶爬蟲是網(wǎng)絡(luò)爬蟲中的一種類型。所謂用戶爬蟲,指的是專門用來爬取互聯(lián)網(wǎng)中用戶數(shù)據(jù)的種爬蟲。由于互聯(lián)網(wǎng)中的用戶數(shù)據(jù)信息,相對(duì)來說是比較敏感的數(shù)據(jù)信息,所以,用戶爬蟲的利用價(jià)值相對(duì)較高。利用用戶爬蟲可以做大量的事情,接下來我們一起來看一下利用用戶爬蟲所做的一些有趣的事吧。2015年有知乎網(wǎng)友對(duì)知乎的用戶據(jù)進(jìn)行了爬取,然后進(jìn)行對(duì)應(yīng)的數(shù)據(jù)分析,便得到了知乎上大量的潛在數(shù)據(jù),比如:知乎上注冊(cè)用戶的男女比例:男生占例多于。知乎上注冊(cè)用戶的地區(qū):北京的人口占據(jù)比重最大,多于30%。知乎上注冊(cè)用戶從事的行業(yè):從事互聯(lián)網(wǎng)行業(yè)的用戶占據(jù)比重最大,同樣多于30%。除此之外,只要我們細(xì)心發(fā)掘,還可以挖掘出更多的潛在數(shù)據(jù),而要分析這些數(shù)據(jù),則必須要取到這些用戶數(shù)據(jù),此時(shí),我們可以使用網(wǎng)絡(luò)爬蟲技術(shù)輕松爬取到這些有用的用戶信息。同樣,在2015年有網(wǎng)友爬取了3000萬(wàn)QQ空間的用戶信息,并同樣從中獲得了大量潛在數(shù)據(jù),比如:QQ空用戶發(fā)說說的時(shí)間規(guī)律:晚上22點(diǎn)左右,平均發(fā)說說的數(shù)量是一天最多的時(shí)候。QQ空用戶的出生月份分布1月和10月出生的用戶較多。QQ空用戶的年齡階段分布:出生于1990年1995年的用戶相對(duì)來說較多。QQ空用戶的性別分布:男生占比多于,女生占比多于30%,未填性別的占左。除了以上兩個(gè)例子之外,用戶爬蟲還可以做很多事情,比如爬取淘寶的用戶信息,可以分析淘用戶喜歡什么商品,從而更有利于我們對(duì)商品的定位等。由此可見,利用用戶爬蟲可以獲得很多有趣的潛在信息,那么這些爬蟲難嗎?其實(shí)不難,相信也能寫出這樣的爬蟲。03小網(wǎng)絡(luò)爬蟲也叫作網(wǎng)絡(luò)蜘蛛、網(wǎng)絡(luò)螞蟻、網(wǎng)絡(luò)機(jī)器人等,可以自

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論