版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、正版課件 內(nèi)容可修改2:數(shù)據(jù)采集基礎(chǔ)HTTP基本原理1、常見的數(shù)據(jù)來(lái)源和格式有哪些?2、數(shù)據(jù)采集的常見方法有哪些?知識(shí)回顧1網(wǎng)絡(luò)爬蟲分類教學(xué)內(nèi)容-數(shù)據(jù)采集基礎(chǔ)網(wǎng)絡(luò)爬蟲的概念2網(wǎng)頁(yè)相關(guān)概念3網(wǎng)絡(luò)爬蟲策略41、網(wǎng)絡(luò)爬蟲的定義網(wǎng)絡(luò)爬蟲( Crawler,又被稱為網(wǎng)頁(yè)蜘蛛-Spider、網(wǎng)絡(luò)機(jī)器人),是一種按照一定的規(guī)則,自動(dòng)地抓取萬(wàn)維網(wǎng)信息的程序或者腳本。網(wǎng)絡(luò)爬蟲經(jīng)典的應(yīng)用案例,如Google、百度、Bing(必應(yīng))。網(wǎng)絡(luò)爬蟲的概念網(wǎng)絡(luò)爬蟲的概念及原理疑問(wèn)【案例1】電影評(píng)價(jià)網(wǎng)站記錄著觀影者對(duì)電影的喜好程度和評(píng)價(jià)信息,通過(guò)對(duì)相關(guān)網(wǎng)站用戶評(píng)價(jià)信息的收集,可以為電影相關(guān)的數(shù)據(jù)的分析和挖掘做支撐,常見的后期
2、應(yīng)用包括:對(duì)電影針對(duì)的用戶群體做分析;獲得大眾娛樂(lè)/輿情熱點(diǎn);電影推薦(廣告推送); 2、網(wǎng)絡(luò)爬蟲的作用網(wǎng)絡(luò)爬蟲有什么用?網(wǎng)絡(luò)爬蟲的概念及原理2、網(wǎng)絡(luò)爬蟲的作用網(wǎng)絡(luò)爬蟲有什么用?疑問(wèn)【案例2】有一個(gè)銷售電子設(shè)備的店鋪,想要及時(shí)了解競(jìng)爭(zhēng)對(duì)手的價(jià)格。他們可以通過(guò)每天訪問(wèn)電商平臺(tái)或相關(guān)產(chǎn)品網(wǎng)站,與店鋪中出售的電子設(shè)備進(jìn)行價(jià)格對(duì)比。但是,由于店鋪中的電子產(chǎn)品種類繁多,而且希望能夠更加頻繁的查看價(jià)格變化的動(dòng)態(tài),采用傳統(tǒng)手工查詢的方式需要花費(fèi)大量的時(shí)間。網(wǎng)絡(luò)爬蟲的概念及原理2、網(wǎng)絡(luò)爬蟲的作用網(wǎng)絡(luò)爬蟲有什么用?疑問(wèn)【案例3】福州的一家上市公司開會(huì)做出股權(quán)轉(zhuǎn)讓決定,剛在官網(wǎng)公告頻道發(fā)布消息,很多內(nèi)部員工還沒(méi)及
3、時(shí)了解到變更信息,國(guó)稅局就立刻找到該上市公司。國(guó)稅稽查人員透露說(shuō)上市公司股權(quán)轉(zhuǎn)讓問(wèn)題越來(lái)越成為稅收征管的熱點(diǎn)和難點(diǎn),國(guó)稅“種植”的網(wǎng)絡(luò)“爬蟲”第一時(shí)間監(jiān)測(cè)到該上市公司轉(zhuǎn)讓股權(quán)的消息,于是引起高度重視。網(wǎng)絡(luò)爬蟲的概念3、網(wǎng)絡(luò)爬蟲的流程為了從萬(wàn)維網(wǎng)大量信息載體中有效地提取數(shù)據(jù),需要采用必要的手段和規(guī)則定向抓取網(wǎng)頁(yè)資源。網(wǎng)絡(luò)爬蟲的實(shí)現(xiàn)原理是通過(guò)標(biāo)準(zhǔn)的HTTP協(xié)議,利用超鏈接和Web文檔檢索方法遍歷萬(wàn)維網(wǎng)。網(wǎng)絡(luò)爬蟲是搜索引擎的重要組成部分,它作為一個(gè)功能強(qiáng)大的自動(dòng)提取網(wǎng)頁(yè)程序,為搜索引擎從萬(wàn)維網(wǎng)上下載網(wǎng)頁(yè)。注意互聯(lián)網(wǎng)網(wǎng)絡(luò)爬蟲模塊最終用戶用戶查詢模塊索引模塊網(wǎng)頁(yè)庫(kù)索引庫(kù)2網(wǎng)絡(luò)爬蟲的概念教學(xué)內(nèi)容-數(shù)據(jù)采集
4、基礎(chǔ)網(wǎng)絡(luò)爬蟲的分類1網(wǎng)頁(yè)相關(guān)概念3網(wǎng)絡(luò)爬蟲策略4網(wǎng)絡(luò)爬蟲的分類網(wǎng)絡(luò)爬蟲按照系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)技術(shù),大致可以分為以下幾種類型。通用網(wǎng)絡(luò)爬蟲( General Purpose Web Crawler )聚焦網(wǎng)絡(luò)爬蟲( Focused Web Crawler )增量式網(wǎng)絡(luò)爬蟲( Incremental Web Crawler )深層網(wǎng)絡(luò)爬蟲( Deep Web Crawler )實(shí)際的網(wǎng)絡(luò)爬蟲系統(tǒng)通常是幾種爬蟲技術(shù)相結(jié)合實(shí)現(xiàn)的。網(wǎng)絡(luò)爬蟲的分類1、通用網(wǎng)絡(luò)爬蟲( General Purpose Web Crawler )原理:通用網(wǎng)絡(luò)爬蟲又稱全網(wǎng)爬蟲( Scalable Web Crawler ),爬行對(duì)
5、象從一些種子 URL 擴(kuò)充到整個(gè) Web,主要為門戶站點(diǎn)搜索引擎和大型 Web 服務(wù)提供商采集數(shù)據(jù)。結(jié)構(gòu):分為頁(yè)面爬行模塊 、頁(yè)面分析模塊、鏈接過(guò)濾模塊、頁(yè)面數(shù)據(jù)庫(kù)、URL 隊(duì)列、初始 URL 集合幾個(gè)部分。爬行策略:深度優(yōu)先策略、廣度優(yōu)先策略。網(wǎng)絡(luò)爬蟲的分類2、聚焦網(wǎng)絡(luò)爬蟲( Focused Web Crawler )原理:聚焦網(wǎng)絡(luò)爬蟲( Focused Crawler ),又稱主題網(wǎng)絡(luò)爬蟲( Topical Crawler ),是指選擇性地爬行那些與預(yù)先定義好的主題相關(guān)頁(yè)面的網(wǎng)絡(luò)爬蟲。結(jié)構(gòu):分為頁(yè)面爬行模塊 、頁(yè)面分析模塊、鏈接過(guò)濾模塊、頁(yè)面數(shù)據(jù)庫(kù)、URL 隊(duì)列、初始 URL 集合、鏈接評(píng)
6、價(jià)模塊以及內(nèi)容評(píng)價(jià)模塊幾個(gè)部分。爬行策略:基于內(nèi)容評(píng)價(jià)的爬行策略、 基于鏈接結(jié)構(gòu)評(píng)價(jià)的爬行策略 、 基于增強(qiáng)學(xué)習(xí)的爬行策略、 基于語(yǔ)境圖的爬行策略。網(wǎng)絡(luò)爬蟲的分類3、增量式網(wǎng)絡(luò)爬蟲( Incremental Web Crawler )原理:增量式網(wǎng)絡(luò)爬蟲( Incremental Web Crawler )是指對(duì)已下載網(wǎng)頁(yè)采取增量式更新和只爬行新產(chǎn)生的或者已經(jīng)發(fā)生變化網(wǎng)頁(yè)的爬蟲,它能夠在一定程度上保證所爬行的頁(yè)面是盡可能新的頁(yè)面。結(jié)構(gòu):包含爬行模塊、排序模塊、更新模塊、本地頁(yè)面集、待爬行 URL 集以及本地頁(yè)面URL 集。爬行策略:統(tǒng)一更新法、個(gè)體更新法、基于分類的更新法(保持本地頁(yè)面集中存儲(chǔ)
7、的頁(yè)面為最新頁(yè)面);廣度優(yōu)先策略、PageRank 優(yōu)先策略等(提高本地頁(yè)面集中頁(yè)面的質(zhì)量)。網(wǎng)絡(luò)爬蟲的分類4、深層網(wǎng)絡(luò)爬蟲( Deep Web Crawler )原理:Deep Web 是那些大部分內(nèi)容不能通過(guò)靜態(tài)鏈接獲取的、隱藏在搜索表單后的,只有用戶提交一些關(guān)鍵詞才能獲得的 Web 頁(yè)面。結(jié)構(gòu):包含六個(gè)基本功能模塊 (爬行控制器、解析器、表單分析器、表單處理器、響應(yīng)分析器、LVS 控制器)和兩個(gè)爬蟲內(nèi)部數(shù)據(jù)結(jié)構(gòu)( URL 列表、LVS 表)。爬行策略:Deep Web 爬蟲爬行過(guò)程中最重要部分就是表單填寫,包含兩種類型:基于領(lǐng)域知識(shí)的表單填寫、基于網(wǎng)頁(yè)結(jié)構(gòu)分析的表單填寫。3網(wǎng)絡(luò)爬蟲的概念
8、教學(xué)內(nèi)容-數(shù)據(jù)采集基礎(chǔ)網(wǎng)頁(yè)相關(guān)概念1網(wǎng)絡(luò)爬蟲的分類2網(wǎng)絡(luò)爬蟲策略4網(wǎng)頁(yè)相關(guān)概念1、 HTTP基本原理HTTP的基本原理,主要包括以下內(nèi)容:URI和URL超文本HTTP和HTTPSHTTP請(qǐng)求過(guò)程請(qǐng)求響應(yīng)網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理URI概述統(tǒng)一資源標(biāo)識(shí)符(Uniform Resource Identifier,URI)是一個(gè)用于標(biāo)識(shí)某一互聯(lián)網(wǎng)資源名稱的字符串。 該種標(biāo)識(shí)允許用戶對(duì)任何(包括本地和互聯(lián)網(wǎng))的資源通過(guò)特定的協(xié)議進(jìn)行交互操作。統(tǒng)一資源定位符(Uniform Resource Locator,URL)、統(tǒng)一資源名稱(Uniform Resource Name,URN)是URI的子集
9、?,F(xiàn)在互聯(lián)網(wǎng)中,URN用的非常少,幾乎所有的URI都是URL,一般的網(wǎng)頁(yè)鏈接既可以稱為URL,也可以稱為URI。注意URL概述URL( Uniform Resource Locator,統(tǒng)一資源定位符)是對(duì)可以從互聯(lián)網(wǎng)上得到的資源的位置和訪問(wèn)方法的一種簡(jiǎn)潔的表示,是互聯(lián)網(wǎng)上標(biāo)準(zhǔn)資源的地址?;ヂ?lián)網(wǎng)上的每個(gè)文件都有一個(gè)唯一的URL,它包含的信息指出文件的位置以及瀏覽器應(yīng)該怎么處理它。網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理URL概述URL采用一種統(tǒng)一的格式來(lái)描述各種信息資源,包括文件、服務(wù)器的地址和目錄等。URL的格式由三部分組成:第一部分是協(xié)議;第二部分是存有該資源的主機(jī)IP地址(有時(shí)也包括端口號(hào));第
10、三部分是主機(jī)資源的具體地址,如目錄和文件名等。https :/ / home.php 協(xié)議 服務(wù)器主機(jī)名或IP地址路徑和資源文件名網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理URL概述依據(jù)URL定義,給出了常用的兩種URL協(xié)議的示例:示例:HTTPS協(xié)議的URL解釋:其計(jì)算機(jī)域名為 。超文本文件是在目錄/home下的index.mooc。示例:文件的URL 解釋:上面這個(gè)URL代表存放在主機(jī) 上的 pub/files/目錄下的一個(gè)文件, 文件名是 foobar.txt。/home/index.moocfile:/pub/files/foobar.txt網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理URL概述完整的帶有授
11、權(quán)的普通URL語(yǔ)法描述如下:URL中的端口號(hào)用來(lái)區(qū)分在同一個(gè)主機(jī)上的不同服務(wù),其編號(hào)范圍從0到65535。HTTP默認(rèn)端口號(hào)為80,指定URL時(shí)可以省略。如前述【示例】HTTP協(xié)議的URL帶端口號(hào)的表達(dá)形式:協(xié)議:/用戶名:密碼子域名.域名.頂級(jí)域名:端口號(hào)/目錄/文件名.文件后綴?參數(shù)=值#標(biāo)志協(xié)議或服務(wù)默認(rèn)端口號(hào)HTTP80FTP21telnet23SMTP25MySQL3306:80/home/index.mooc網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理超文本超文本(Hyper Text,HT)是由信息結(jié)點(diǎn)和表示信息結(jié)點(diǎn)間相關(guān)性的鏈構(gòu)成的一個(gè)具有一定邏輯結(jié)構(gòu)和語(yǔ)義的網(wǎng)絡(luò)。超文本是由節(jié)點(diǎn)(Node
12、)和鏈(Link)構(gòu)成的信息網(wǎng)絡(luò)。節(jié)點(diǎn)是表達(dá)信息的單位,通常表示一個(gè)單一的概念或圍繞一個(gè)特殊主題組織起來(lái)的數(shù)據(jù)集合。節(jié)點(diǎn)的內(nèi)容可是文本、圖形、圖像、動(dòng)畫、音頻、視頻等,也可以是一般計(jì)算機(jī)程序。鏈?zhǔn)枪潭ü?jié)點(diǎn)間的信息聯(lián)系,它以某種形式將一個(gè)節(jié)點(diǎn)與其他節(jié)點(diǎn)連接起來(lái)。由于超文本沒(méi)有規(guī)定鏈的規(guī)范與形式,因此,超文本與超媒體系統(tǒng)的鏈也是各異的,信息間的聯(lián)系豐富多彩引起鏈的種類復(fù)雜多樣。但最終達(dá)到效果卻是一致的,即建立起節(jié)點(diǎn)之間的聯(lián)系。瀏覽器中的網(wǎng)頁(yè)就是通過(guò)超文本解析而成的,網(wǎng)頁(yè)源代碼是一系列HTML代碼,包括一系列標(biāo)簽:img(顯示圖片)、p(指定顯示段落)等。瀏覽器通過(guò)解析一系列標(biāo)簽,便形成了可觀看的網(wǎng)
13、頁(yè),網(wǎng)頁(yè)的源代碼HTML就可稱作超文本。網(wǎng)頁(yè)相關(guān)概念HTTP和HTTPSHTTP協(xié)議(HyperText Transfer Protocol,超文本傳輸協(xié)議)是因特網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)傳輸協(xié)議,所有的WWW文件都必須遵守這個(gè)標(biāo)準(zhǔn)。HTTP是一個(gè)基于TCP/IP通信協(xié)議來(lái)傳遞數(shù)據(jù)(HTML文件、圖片文件、查詢結(jié)果等)。HTTPS(Hyper Text Transfer Protocol over SecureSocket Layer),是以安全為目標(biāo)的HTTP通道,在HTTP的基礎(chǔ)上通過(guò)傳輸加密和身份認(rèn)證保證了傳輸過(guò)程的安全性。HTTPS在HTTP的基礎(chǔ)下加入SSL層,HTTPS的安全基礎(chǔ)
14、是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL。HTTPS 存在不同于HTTP的默認(rèn)端口(端口為443)及一個(gè)加密/身份驗(yàn)證層(在HTTP與TCP之間)。1、HTTP基本原理網(wǎng)頁(yè)相關(guān)概念HTTP和HTTPSHTTPS的安全基礎(chǔ)是SSL,通過(guò)它傳輸?shù)膬?nèi)容都是經(jīng)過(guò)SSL加密,它的主要作用可以分為以下兩種:建立一個(gè)信息安全通道來(lái)保證數(shù)據(jù)傳輸?shù)陌踩淮_認(rèn)網(wǎng)站的真實(shí)性,凡是使用了HTTPS的網(wǎng)站,都可以通過(guò)點(diǎn)擊瀏覽器地址欄的鎖頭標(biāo)志來(lái)查看網(wǎng)站認(rèn)證之后的真實(shí)信息,也可以通過(guò)CA機(jī)構(gòu)頒發(fā)的安全簽章來(lái)查詢。HTTP請(qǐng)求過(guò)程可分為以下幾個(gè)部分:1. 建立TCP連接;2. 瀏覽器向服務(wù)器發(fā)送請(qǐng)求命令;3. 服務(wù)器應(yīng)答;
15、4. 服務(wù)器關(guān)閉TCP連接;5. 瀏覽器接受到服務(wù)器響應(yīng)的數(shù)據(jù)。1、HTTP基本原理網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理HTTP和HTTPS1. 建立TCP連接在 HTTP工作開始之前,Web 瀏覽器首先要通過(guò)網(wǎng)絡(luò)與Web服務(wù)器建立連接,該連接是通過(guò)TCP來(lái)完成的,該協(xié)議與 IP 協(xié)議共同構(gòu)建 Internet,即著名的 TCP/IP 協(xié)議,因此 Internet 又被稱作是TCP/IP網(wǎng)絡(luò)。2.Web瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求命令建立TCP連接后,Web瀏覽器會(huì)向Web服務(wù)器發(fā)送請(qǐng)求命令。3.Web服務(wù)器應(yīng)答客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后,服務(wù)器會(huì)向客戶機(jī)進(jìn)行應(yīng)答,應(yīng)答內(nèi)容包括:協(xié)議的版本號(hào)和應(yīng)答狀
16、態(tài)碼(HTTP/1.1 200 OK),響應(yīng)頭信息來(lái)記錄服務(wù)器自己的數(shù)據(jù),被請(qǐng)求的文檔內(nèi)容。網(wǎng)頁(yè)相關(guān)概念4.Web服務(wù)器關(guān)閉TCP鏈接一旦Web服務(wù)器向?yàn)g覽器發(fā)送了請(qǐng)求的數(shù)據(jù),它就要關(guān)閉 TCP連接;但如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼:Connection:keep-alive,TCP連接在發(fā)送后將仍然保持打開狀態(tài),瀏覽器可以繼續(xù)通過(guò)相同的連接發(fā)送請(qǐng)求。5.瀏覽器接受到服務(wù)器響應(yīng)的數(shù)據(jù)瀏覽器接受服務(wù)器應(yīng)答回來(lái)的HTML代碼、CSS、JS代碼,再進(jìn)行頁(yè)面的渲染或者接受到應(yīng)答的文件進(jìn)行保存等操作。1、HTTP基本原理網(wǎng)頁(yè)相關(guān)概念請(qǐng)求方式在客戶機(jī)和服務(wù)器之間進(jìn)行請(qǐng)求響應(yīng)時(shí),兩種最常被用到
17、的方式是GET和POST:GET - 從指定的資源請(qǐng)求數(shù)據(jù)。POST - 向指定的資源提交要被處理的數(shù)據(jù)。 GET 方式查詢字符串(名稱/值對(duì))是在 GET 請(qǐng)求的URL中發(fā)送的: POST 方式 查詢字符串(名稱/值對(duì))是在 POST 請(qǐng)求的 HTTP 消息主體中發(fā)送的:/test/demo_form.asp?name1=value1&name2=value2POST /test/demo_form.asp HTTP/1.1Host: name1=value1&name2=value21、HTTP基本原理網(wǎng)頁(yè)相關(guān)概念請(qǐng)求方式除了GET和POST方式,還有其他的請(qǐng)求方式:HEAD - 類似于
18、GET 請(qǐng)求,只不過(guò)返回的響應(yīng)中沒(méi)有具體的內(nèi)容,用于獲取報(bào)頭;PUT - 從客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi);DELETE - 請(qǐng)求服務(wù)器刪除指定的頁(yè)面;CONNECT - HTTP/1.1 協(xié)議中預(yù)留給能夠?qū)⑦B接改為管道方式的代理服務(wù)器;OPTIONS - 允許客戶端查看服務(wù)器的性能;TRACE - 回顯服務(wù)器收到的請(qǐng)求,主要用于測(cè)試或診斷;PATCH - 是對(duì)PUT方法的補(bǔ)充,用來(lái)對(duì)已知資源進(jìn)行局部更新。1、HTTP基本原理網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理響應(yīng) 響應(yīng),由服務(wù)端返回給客戶端,可分為四部分:響應(yīng)狀態(tài)碼( Response Status Code )響應(yīng)頭( Respo
19、nse Headers )空行響應(yīng)體( Response Body )1 響應(yīng)狀態(tài)碼2 響應(yīng)頭3 空行4 響應(yīng)體網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理響應(yīng)響應(yīng)狀態(tài)碼HTTP狀態(tài)碼表示 HTTP協(xié)議所返回的響應(yīng)的狀態(tài)。HTTP狀態(tài)碼通常分為5種類型, 分別以15五個(gè)數(shù)字開頭, 由3位整數(shù)組成: 1XX表示消息;2XX表示成功;3XX表示重定向;4XX表示請(qǐng)求錯(cuò)誤;5XX表示服務(wù)器錯(cuò)誤;命令功能處理方式200請(qǐng)求成功獲得響應(yīng)內(nèi)容,進(jìn)行處理201請(qǐng)求完成,結(jié)果是創(chuàng)建了新資源爬蟲中不會(huì)遇到202請(qǐng)求被接受,但處理尚未完成阻塞等待204服務(wù)器端已經(jīng)實(shí)現(xiàn)了請(qǐng)求,但是沒(méi)有返回新的信息丟棄300存在多個(gè)可用的被請(qǐng)求
20、資源若程序中能夠處理,則進(jìn)行進(jìn)一步處理,如果程序中不能處理,則丟棄301請(qǐng)求到的資源都會(huì)分配一個(gè)永久的URL,這樣就可以在將來(lái)通過(guò)該 URL來(lái)訪問(wèn)此資源重定向到分配的URL302請(qǐng)求到資源在一個(gè)不同的URL處臨時(shí)保存重定向到臨時(shí)的URL命令功能處理方式304請(qǐng)求的資源未更新丟棄400非法請(qǐng)求丟棄401未授權(quán)丟棄403禁止丟棄404沒(méi)有找到丟棄500服務(wù)器出現(xiàn)錯(cuò)誤丟棄常見狀態(tài)碼及爬蟲處理方式:網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理響應(yīng)響應(yīng)頭響應(yīng)頭包含了服務(wù)器對(duì)請(qǐng)求的應(yīng)答信息,常見的響應(yīng)頭如下:Allow:服務(wù)器支持哪些請(qǐng)求方法(如GET、POST等);Content-Type:表示后面的文檔屬于什么類
21、型。Servlet默認(rèn)為text/plain,但通常需要顯式地指定為text/html;Date:當(dāng)前的GMT時(shí)間;Location:表示客戶應(yīng)當(dāng)?shù)侥睦锶ヌ崛∥臋n;Refresh:表示瀏覽器應(yīng)該在多少時(shí)間之后刷新文檔,以秒計(jì);Server:服務(wù)器名字,Servlet一般不設(shè)置這個(gè)值,而是由Web服務(wù)器自己設(shè)置;Set-Cookie:設(shè)置和頁(yè)面關(guān)聯(lián)的Cookie; 網(wǎng)頁(yè)相關(guān)概念1、HTTP基本原理響應(yīng)空行作為內(nèi)容分割,表示以下不再是響應(yīng)頭的內(nèi)容。響應(yīng)體響應(yīng)頭是服務(wù)器返回給客戶端的文本信息,響應(yīng)的正文數(shù)據(jù)在響應(yīng)體中;比如請(qǐng)求網(wǎng)頁(yè)時(shí),它的響應(yīng)體就是網(wǎng)頁(yè)的HTML代碼;爬蟲請(qǐng)求網(wǎng)頁(yè)后,要解析的內(nèi)容就是
22、響應(yīng)體。響應(yīng)體網(wǎng)頁(yè)相關(guān)概念2、網(wǎng)頁(yè)基礎(chǔ)瀏覽器訪問(wèn)網(wǎng)站時(shí),頁(yè)面各不相同,現(xiàn)在介紹一下網(wǎng)頁(yè)的基本組成、結(jié)構(gòu)和節(jié)點(diǎn)等內(nèi)容,具體內(nèi)容如下:網(wǎng)頁(yè)的組成節(jié)點(diǎn)數(shù)及節(jié)點(diǎn)的關(guān)系選擇器網(wǎng)頁(yè)相關(guān)概念2、網(wǎng)頁(yè)基礎(chǔ)網(wǎng)頁(yè)組成網(wǎng)頁(yè)的是以HTML文檔、JavaScript腳本和CSS樣式單的方式組織。在網(wǎng)頁(yè)上查看源碼可以了解其內(nèi)部結(jié)構(gòu)。網(wǎng)頁(yè)相關(guān)概念2、網(wǎng)頁(yè)基礎(chǔ)節(jié)點(diǎn)樹及節(jié)點(diǎn)間的關(guān)系HTML DOM將HTML文檔視作樹結(jié)構(gòu),這種結(jié)構(gòu)被稱為節(jié)點(diǎn)樹,如下圖所示:通過(guò)HTML DOM,樹中的所有節(jié)點(diǎn)均可通過(guò)JavaScript進(jìn)行訪問(wèn)。所有HTML元素(節(jié)點(diǎn))均可被修改,也可以創(chuàng)建或刪除節(jié)點(diǎn)。網(wǎng)頁(yè)相關(guān)概念2、網(wǎng)頁(yè)基礎(chǔ)節(jié)點(diǎn)樹及節(jié)點(diǎn)間的關(guān)
23、系節(jié)點(diǎn)樹中的節(jié)點(diǎn)彼此擁有層級(jí)關(guān)系。父(parent)、子(child)和同胞(sibling)等術(shù)語(yǔ)用于描述這些關(guān)系。父節(jié)點(diǎn)擁有子節(jié)點(diǎn),同級(jí)的子節(jié)點(diǎn)被稱為同胞(兄弟或姐妹):在節(jié)點(diǎn)樹中,頂端節(jié)點(diǎn)被稱為根(root);每個(gè)節(jié)點(diǎn)都有父節(jié)點(diǎn)、除了根(它沒(méi)有父節(jié)點(diǎn));一個(gè)節(jié)點(diǎn)可擁有任意數(shù)量的子;同胞是擁有相同父節(jié)點(diǎn)的節(jié)點(diǎn)。下面的圖片展示了節(jié)點(diǎn)樹的一部分,以及節(jié)點(diǎn)之間的關(guān)系:網(wǎng)頁(yè)相關(guān)概念2、網(wǎng)頁(yè)基礎(chǔ)選擇器網(wǎng)頁(yè)由一個(gè)個(gè)節(jié)點(diǎn)組成,CSS選擇器依據(jù)不同的節(jié)點(diǎn)設(shè)置不同的樣式規(guī)則。在CSS中,使用選擇器來(lái)定位節(jié)點(diǎn)。CSS選擇器常見的的語(yǔ)法規(guī)則如下:選擇器示例示例說(shuō)明.ro選擇所有class=in
24、tro的元素#id#firstname選擇所有id=firstname的元素*選擇所有元素elementp選擇所有元素element,elementdiv,p選擇所有元素和元素element elementdiv p選擇元素內(nèi)的所有元素elementelementdivp選擇所有父級(jí)是 元素的 元素element+elementdiv+p選擇所有緊接著元素之后的元素attributetarget選擇所有帶有target屬性元素:linka:link選擇所有未訪問(wèn)鏈接:visiteda:visited選擇所有訪問(wèn)過(guò)的鏈接:first-letterp:first-letter選擇每一個(gè)元素的第一個(gè)
25、字母4網(wǎng)絡(luò)爬蟲的概念教學(xué)內(nèi)容-數(shù)據(jù)采集基礎(chǔ)網(wǎng)絡(luò)爬蟲策略1網(wǎng)絡(luò)爬蟲的分類2網(wǎng)頁(yè)相關(guān)概念3網(wǎng)絡(luò)爬蟲策略互聯(lián)網(wǎng)可以看成一個(gè)超級(jí)大的“圖”,而每個(gè)頁(yè)面可以看做是一個(gè)“節(jié)點(diǎn)”,頁(yè)面中的鏈接可以看成是圖的“有向邊”,能夠通過(guò)圖的遍歷方式對(duì)互聯(lián)網(wǎng)這個(gè)超級(jí)大“圖”進(jìn)行訪問(wèn)。依據(jù)互聯(lián)網(wǎng)的特性,互聯(lián)網(wǎng)遍歷有以下幾種:寬(廣)度優(yōu)先遍歷深度優(yōu)先遍歷帶偏好的爬蟲網(wǎng)絡(luò)爬蟲策略1、 圖的寬度優(yōu)先遍歷圖的寬度優(yōu)先遍歷(BFS)算法是一個(gè)分層搜索的過(guò)程,和樹的層序遍歷算法相同。圖中一個(gè)節(jié)點(diǎn),作為起始節(jié)點(diǎn),然后按照層次遍歷的方式,一層一層地進(jìn)行訪問(wèn)。依據(jù)互聯(lián)網(wǎng)的特性,互聯(lián)網(wǎng)遍歷過(guò)程如下:1.頂點(diǎn) V入隊(duì)列;2.當(dāng)隊(duì)列非空時(shí)繼續(xù)
26、執(zhí)行,否則算法為空;3.出隊(duì)列, 獲得隊(duì)頭節(jié)點(diǎn) V, 訪問(wèn)頂點(diǎn) V并標(biāo)記 V已經(jīng)被訪問(wèn);4.查找頂點(diǎn) V的第一個(gè)鄰接頂點(diǎn) col;5.若 V的鄰接頂點(diǎn)col未被訪問(wèn)過(guò),則col進(jìn)隊(duì)列;6.繼續(xù)查找 V的其他鄰接頂點(diǎn) col,轉(zhuǎn)到步驟5,若 V的所有鄰接頂點(diǎn)都已經(jīng)被訪問(wèn)過(guò),則轉(zhuǎn)到步驟2。網(wǎng)絡(luò)爬蟲策略1、 圖的寬度優(yōu)先遍歷 爬蟲項(xiàng)目是從一系列的種子鏈接開始的。 所謂種子鏈接, 就好比寬度優(yōu)先遍歷中的種子節(jié)點(diǎn)。實(shí)際的網(wǎng)絡(luò)爬蟲項(xiàng)目中種子鏈接可以有多個(gè),而寬度優(yōu)先遍歷的種子節(jié)點(diǎn)只有一個(gè)。寬度優(yōu)先遍歷流程:1.將初始的種子URL放入TODO表;2.TODO表中取得一條鏈接,和 Visited表中的鏈接進(jìn)行
27、比較, 若Visited表中存在此鏈接(表示已被訪問(wèn)過(guò)),跳過(guò)不做處理;不存在(表示未被訪問(wèn)過(guò)),繼續(xù)進(jìn)行。3.對(duì)鏈接進(jìn)行解析,把頁(yè)面中新解析出的URL放入TODO表中4.處理完畢后, 將本頁(yè)面的鏈接地址直接存入 Visited表中;5.繼續(xù)步驟2,循環(huán)往復(fù)。網(wǎng)絡(luò)爬蟲策略1、 圖的寬度優(yōu)先遍歷寬度優(yōu)先遍歷爬蟲優(yōu)勢(shì):重要的網(wǎng)頁(yè)往往離種子比較近,距離越遠(yuǎn)重要性越低,寬度優(yōu)先遍歷能最先抓取重要頁(yè)面;萬(wàn)維網(wǎng)的最大深度能達(dá)到17層,到達(dá)指定網(wǎng)頁(yè)總存在一條最短路徑,寬度優(yōu)先遍歷會(huì)以最快的速度達(dá)到指定網(wǎng)頁(yè);寬度優(yōu)先有利于多爬蟲的合作抓取, 多爬蟲合作通常先抓取站內(nèi)鏈接, 抓取的封閉性很強(qiáng)。網(wǎng)絡(luò)爬蟲策略2、深度優(yōu)先遍歷深度優(yōu)先遍歷類似于樹的前序遍歷。采用的搜索方法是盡可能先對(duì)縱深方向進(jìn)行遍歷。具體流程如下:1.訪問(wèn)出發(fā)點(diǎn)V,并將其標(biāo)記為已訪問(wèn)過(guò);2.依次從V出發(fā)搜索V的每個(gè)鄰接點(diǎn)W。若W未曾訪問(wèn)過(guò),則以W為新的出發(fā)點(diǎn)繼續(xù)進(jìn)行深度優(yōu)先遍歷,直至所有和源點(diǎn)V有
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 石河子大學(xué)《園林藝術(shù)原理》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《水污染控制工程》2021-2022學(xué)年期末試卷
- 石河子大學(xué)《管理學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《城市規(guī)劃原理》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽(yáng)理工大學(xué)《伺服系統(tǒng)》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽(yáng)理工大學(xué)《面向?qū)ο蟪绦蛟O(shè)計(jì)》2021-2022學(xué)年期末試卷
- 沈陽(yáng)理工大學(xué)《機(jī)械工程控制基礎(chǔ)》2021-2022學(xué)年期末試卷
- 沈陽(yáng)理工大學(xué)《非線性光學(xué)原理及應(yīng)用》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽(yáng)理工大學(xué)《城市規(guī)劃原理》2021-2022學(xué)年第一學(xué)期期末試卷
- 國(guó)能 售電合同
- 漢語(yǔ)言文學(xué)師范專業(yè)導(dǎo)論課程教學(xué)大綱
- 醫(yī)院參觀引導(dǎo)詞
- 污水處理廠日常水質(zhì)監(jiān)測(cè)體系
- 大學(xué)生戀愛和性心理教學(xué)案
- 體操技巧組合動(dòng)作改編教案
- 腳手架工程危險(xiǎn)源辨識(shí)及對(duì)策措施
- GB∕T 39402-2020 面向人機(jī)協(xié)作的工業(yè)機(jī)器人設(shè)計(jì)規(guī)范
- 五年級(jí)上冊(cè)數(shù)學(xué)教案2.6花邊設(shè)計(jì)比賽_西師大版(2018秋)
- 清凈室(Clean Room)管理資料
- 鋼筋策劃思路指引
- ★結(jié)構(gòu)方程模型要點(diǎn)
評(píng)論
0/150
提交評(píng)論