




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件全套可編輯PPT課件
課程核心知識:大數(shù)據(jù)基本概念、基于Python的大數(shù)據(jù)采集技術(shù)、綜合運用大數(shù)據(jù)采集技術(shù)對數(shù)據(jù)進行采集。課程介紹:本課程主要介紹大數(shù)據(jù)的基本概念、大數(shù)據(jù)的常用采集技術(shù),課程以提升能力為目標,以職業(yè)實踐為主線、以項目課程為主體。培養(yǎng)技能目標:能夠運用大數(shù)據(jù)采集技術(shù),獲取用戶所需要的各種數(shù)據(jù)。課程簡介本課件是可編輯的正常PPT課件課時分配本課件是可編輯的正常PPT課件基礎(chǔ)篇大數(shù)據(jù)采集技術(shù)本課件是可編輯的正常PPT課件隨著大數(shù)據(jù)時代的到來,每天會產(chǎn)生海量數(shù)據(jù),例如Internet上網(wǎng)頁數(shù)量超出160億個,如何獲取用戶感興趣的數(shù)據(jù)成為數(shù)據(jù)分析必不可少的前提。篇章引入本課件是可編輯的正常PPT課件章節(jié)任務(wù)本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目一認識大數(shù)據(jù)采集技術(shù)任務(wù)一大數(shù)據(jù)采集技術(shù)概念本課件是可編輯的正常PPT課件任務(wù)引入1哎,疫情何時才是個頭?。∥夷芡ㄟ^數(shù)據(jù)來分析嗎?本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)從應用場景入手,介紹數(shù)據(jù)和數(shù)據(jù)采集的概念、技術(shù)和工具,使讀者對大數(shù)據(jù)及其采集方法、采集工具有個整體的了解。任務(wù)教學目標:識記:數(shù)據(jù)和大數(shù)據(jù)的概念。識記:大數(shù)據(jù)的主流技術(shù)。識記:數(shù)據(jù)采集的主要工具。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容大數(shù)據(jù)的主流技術(shù)大數(shù)據(jù)采集技術(shù)大數(shù)據(jù)采集工具一二三本課件是可編輯的正常PPT課件大數(shù)據(jù)的主流技術(shù)知識點一本課件是可編輯的正常PPT課件數(shù)據(jù)(data):是指對客觀事物進行記錄的符號,是對客觀事物的性質(zhì)、
狀態(tài)以及相互關(guān)系等進行記載的物理符號或符號的組合。(一)數(shù)據(jù)、大數(shù)據(jù)1.數(shù)據(jù)本課件是可編輯的正常PPT課件(一)數(shù)據(jù)、大數(shù)據(jù)2.大數(shù)據(jù)“大數(shù)據(jù)”是在體量和類別特別大的雜亂數(shù)據(jù)集中,深度挖掘分析取得有價值信息的能力。不僅僅關(guān)注數(shù)據(jù)的量大,更加關(guān)注“數(shù)據(jù)”的深度分析和應用,對于數(shù)據(jù)有價值的深度挖掘分析和在新形勢下的數(shù)據(jù)應用是大數(shù)據(jù)應用的重點。本課件是可編輯的正常PPT課件(一)數(shù)據(jù)、大數(shù)據(jù)3.大數(shù)據(jù)5V特性規(guī)模性(Volume)數(shù)據(jù)數(shù)量級從GB或幾個TB到以PB(1千個T)、EB(1百萬個T)或ZB(10億個T)為計量單位來衡量。價值性(Value)數(shù)據(jù)價值密度低。多樣性(Variety)數(shù)據(jù)來源多、數(shù)據(jù)格式多樣、數(shù)據(jù)關(guān)聯(lián)性強。高速性(Velocity)數(shù)據(jù)量大、數(shù)據(jù)響應時間短,實時性較高。真實性(Veracity)數(shù)據(jù)可信性、真?zhèn)涡浴碓春托抛u、有效性和可審計性等特性。51234本課件是可編輯的正常PPT課件(二)大數(shù)據(jù)主流技術(shù)1.分布式存儲與傳統(tǒng)的數(shù)據(jù)存儲不同,由于需要存儲海量的、異構(gòu)的數(shù)據(jù),因此將所有數(shù)據(jù)都存放在同一個存儲介質(zhì)是不現(xiàn)實的。Hadoop和Hbase是分布式存儲的代表本課件是可編輯的正常PPT課件(二)大數(shù)據(jù)主流技術(shù)2.批處理技術(shù)大規(guī)模數(shù)據(jù)的處理通常需要進行批處理。MapReduce采用了批處理技術(shù)MapReduce是具有代表性的大數(shù)據(jù)批處理技術(shù)。MapReduce采用分而治之的思想,將大量的、復雜的數(shù)據(jù)計算高度抽象為兩個函數(shù)—Map和Reduce來進行批處理。本課件是可編輯的正常PPT課件(二)大數(shù)據(jù)主流技術(shù)3.流計算流計算可以很好地對大規(guī)模流動數(shù)據(jù)在不斷變化的運動過程中實時地進行分析,捕捉到可能有用的信息。Storm是流計算的代表本課件是可編輯的正常PPT課件(二)大數(shù)據(jù)主流技術(shù)4.圖計算現(xiàn)實生活中許多數(shù)據(jù)可以用圖或網(wǎng)絡(luò)的形式展現(xiàn),例如社交網(wǎng)絡(luò)、傳染病的傳播途徑,公交地鐵的線路圖等。許多計算也可以以圖的形式來進行。TensorFlow以圖計算為基礎(chǔ)本課件是可編輯的正常PPT課件(二)大數(shù)據(jù)主流技術(shù)5.查詢分析計算查詢和分析是大數(shù)據(jù)的主要應用之一。傳統(tǒng)的基于關(guān)系數(shù)據(jù)庫的查詢分析系統(tǒng)已經(jīng)不能滿足海量、異構(gòu)的數(shù)據(jù)查詢和分析的需要。實時性和準確性是目前針對大數(shù)據(jù)查詢分析的要求。查詢分析計算本課件是可編輯的正常PPT課件大數(shù)據(jù)采集技術(shù)知識點二本課件是可編輯的正常PPT課件(一)大數(shù)據(jù)采集系統(tǒng)通過對這些日志信息進行日志采集、收集,然后進行數(shù)據(jù)分析,挖掘公司業(yè)務(wù)平臺日志數(shù)據(jù)中的潛在價值,為公司決策和公司后臺服務(wù)器平臺性能評估提供可靠的數(shù)據(jù)保證。系統(tǒng)日志采集系統(tǒng)通過網(wǎng)絡(luò)爬蟲和一些網(wǎng)站平臺提供的公共API(如Twitter和新浪微博API)等方式從網(wǎng)站上獲取數(shù)據(jù)。網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)企業(yè)每時每刻產(chǎn)生的業(yè)務(wù)數(shù)據(jù),以數(shù)據(jù)庫一行記錄形式被直接寫入到數(shù)據(jù)庫中。通過數(shù)據(jù)庫采集系統(tǒng)直接與企業(yè)業(yè)務(wù)后臺服務(wù)器結(jié)合,將企業(yè)業(yè)務(wù)后臺每時每刻都在產(chǎn)生大量的業(yè)務(wù)記錄寫入到數(shù)據(jù)庫中,最后由特定的處理分許系統(tǒng)進行系統(tǒng)分析。數(shù)據(jù)庫采集系統(tǒng)本課件是可編輯的正常PPT課件(二)數(shù)據(jù)采集方法離線采集ETL意為抽取、轉(zhuǎn)換、加載,ETL是離線數(shù)據(jù)采集的代表。離線采集只需要采集歷史數(shù)據(jù)?;ヂ?lián)網(wǎng)采集采集互聯(lián)網(wǎng)產(chǎn)生的數(shù)據(jù),例如微博、朋友圈、網(wǎng)上發(fā)布的音頻、視頻等?;ヂ?lián)網(wǎng)采集是數(shù)據(jù)采集主要的形式。實時采集實時采集主要用在考慮流處理的業(yè)務(wù)場景,需要實時了解數(shù)據(jù)的變化過程。132本課件是可編輯的正常PPT課件大數(shù)據(jù)采集工具知識點三本課件是可編輯的正常PPT課件爬蟲:一種按照用戶條件,并根據(jù)一定的規(guī)則,自動獲取網(wǎng)絡(luò)上數(shù)據(jù)的
程序。搜索引擎就是利用爬蟲技術(shù)實現(xiàn)對信息的搜索。(一)爬蟲1.系統(tǒng)日志采集系統(tǒng)爬蟲大致可以分為:通用網(wǎng)絡(luò)爬蟲聚焦網(wǎng)絡(luò)爬蟲增量式爬蟲深層網(wǎng)絡(luò)爬蟲本課件是可編輯的正常PPT課件Kettle是一款典型的ETL工具。(二)ETLETL工具Kettle允許你管理來自不同數(shù)據(jù)源的數(shù)據(jù),通過提供一個圖形化的用戶環(huán)境來描述你想做什么,而不是怎么做。本課件是可編輯的正常PPT課件Flume是一個分布式、高可靠、高可用的海量日志聚合系統(tǒng);
Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),它可以處理消費者在網(wǎng)站中的所有動作流數(shù)據(jù)。(三)Flume/Kafka整合Flume和Kafka的數(shù)據(jù)實時采集框架本課件是可編輯的正常PPT課件本任務(wù)學習了大數(shù)據(jù)基本概念和主流技術(shù)。包括如下內(nèi)容:1.大數(shù)據(jù)基本概念和5V特性。2.大數(shù)據(jù)采集技術(shù)。3.大數(shù)據(jù)采集框架。任務(wù)小結(jié)本課件是可編輯的正常PPT課件1.什么是大數(shù)據(jù),大數(shù)據(jù)有哪些特性?2.大數(shù)據(jù)主流技術(shù)有哪些?3.大數(shù)據(jù)采集框架有哪些,包含但不限于教材中提到的?作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目一認識大數(shù)據(jù)采集技術(shù)任務(wù)二理解網(wǎng)絡(luò)爬蟲本課件是可編輯的正常PPT課件回顧知識點1大數(shù)據(jù)概念及5V特性回顧知識點2大數(shù)據(jù)采集技術(shù)回顧知識點3大數(shù)據(jù)采集框架回顧本課件是可編輯的正常PPT課件任務(wù)引入1網(wǎng)絡(luò)上那么多數(shù)據(jù),怎么才能獲取,難道要一個一個網(wǎng)頁復制粘貼?本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹爬蟲的概念、原理,類型以及涉及到的法律問題,使讀者對爬蟲有個初步的了解。任務(wù)教學目標:了解爬蟲的基本概念。掌握爬蟲的類型。熟悉爬蟲的工作原理。熟悉爬蟲涉及的法律問題。熟悉反爬蟲的目的。掌握反爬蟲的常用策略。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容爬蟲的定義爬蟲的類型爬蟲的原理一二三爬蟲的搜索策略四反爬蟲五本課件是可編輯的正常PPT課件爬蟲的定義知識點一本課件是可編輯的正常PPT課件爬蟲:一種按照用戶條件,并根據(jù)一定的規(guī)則,自動獲取網(wǎng)絡(luò)上的數(shù)據(jù)的程序。(一)爬蟲的定義本課件是可編輯的正常PPT課件爬蟲的分類知識點二本課件是可編輯的正常PPT課件爬蟲的分類通用網(wǎng)絡(luò)爬蟲A聚焦網(wǎng)絡(luò)爬蟲B增量式網(wǎng)絡(luò)爬蟲C深層網(wǎng)絡(luò)爬蟲D本課件是可編輯的正常PPT課件爬行對象從一些URL擴充到整個Web,主要為門戶站點搜索引擎和大型Web服務(wù)提供商采集數(shù)據(jù)。是指選擇性地爬行那些與預先定義好的主題相關(guān)頁面的網(wǎng)絡(luò)爬蟲。是指對已下載網(wǎng)頁采取增量式更新和只爬行新產(chǎn)生的或者已經(jīng)發(fā)生變化網(wǎng)頁的爬蟲,它能夠在一定程度上保證所爬行的頁面是盡可能新的頁面。Web頁面按存在方式可以分為表層網(wǎng)頁(SurfaceWeb)和深層網(wǎng)頁(DeepWeb),深層網(wǎng)絡(luò)爬蟲就是針對深層網(wǎng)頁數(shù)據(jù)爬取的爬蟲。通用網(wǎng)絡(luò)爬蟲通用網(wǎng)絡(luò)爬蟲增量式網(wǎng)絡(luò)爬蟲深層網(wǎng)絡(luò)爬蟲爬蟲的分類本課件是可編輯的正常PPT課件爬蟲的工作原理知識點三本課件是可編輯的正常PPT課件(一)通用網(wǎng)絡(luò)爬蟲通用網(wǎng)絡(luò)爬蟲工作過程本課件是可編輯的正常PPT課件(二)聚焦網(wǎng)絡(luò)爬蟲聚焦網(wǎng)絡(luò)爬蟲的實現(xiàn)過程本課件是可編輯的正常PPT課件爬蟲的搜索策略知識點四本課件是可編輯的正常PPT課件(一)廣度優(yōu)先搜索廣度優(yōu)先搜索是圖的基本算法其策略是在搜索過程中,在完成當前頁面(節(jié)點)的搜索后,才進行下一頁面(節(jié)點)的搜索。本課件是可編輯的正常PPT課件(二)最佳優(yōu)先搜索最佳優(yōu)先搜索策略按照一定的網(wǎng)頁分析算法,預測候選URL與目標網(wǎng)頁的相似度,或與主題的相關(guān)性,并選取評價最好的一個或幾個URL進行抓取。本課件是可編輯的正常PPT課件(三)深度優(yōu)先搜索深度優(yōu)先搜索策略從起始網(wǎng)頁開始,選擇一個URL進入,分析這個網(wǎng)頁中的URL,選擇一個再進入。如此一個鏈接一個鏈接地抓取下去,直到處理完一條路線之后再處理下一條路線。本課件是可編輯的正常PPT課件反爬蟲知識點五本課件是可編輯的正常PPT課件隨著網(wǎng)絡(luò)不斷增長,網(wǎng)絡(luò)用戶也呈現(xiàn)幾何增長。隨之而來的數(shù)據(jù)安全事件不斷發(fā)生。例如詐騙電話、電信詐騙等。(一)數(shù)據(jù)變得不安全
數(shù)據(jù)安全成為網(wǎng)絡(luò)隱患本課件是可編輯的正常PPT課件保護數(shù)據(jù),維護數(shù)據(jù)安全,保護個人與集體的利益。(二)反爬蟲的目的保護數(shù)據(jù)安全本課件是可編輯的正常PPT課件(三)反爬蟲的策略爬蟲爬取某個網(wǎng)站數(shù)據(jù)時,會在短時間內(nèi)發(fā)出大量訪問請求,這些請求IP都是同一個。因此,網(wǎng)站會設(shè)置訪問閾值,針對超過閾值的異常IP,網(wǎng)站可以禁止其訪問。但是由于大量用戶來說,公網(wǎng)IP地址相同,這種方法容易誤傷普通用戶,所以,一般采取禁止一段時間訪問。IP地址限制目前大部分網(wǎng)站會設(shè)置會員限制,部分數(shù)據(jù)及操作只能登錄賬號才能有權(quán)限訪問,這一做法限制了普通爬蟲隨意訪問。深層爬蟲可以通過攜帶cookie信息,突破網(wǎng)站權(quán)限設(shè)置,繼續(xù)爬取數(shù)據(jù)。網(wǎng)站可以實時監(jiān)測賬號訪問頻率,設(shè)置訪問頻率限制,當某一賬號訪問超過限制,即可視為異常賬號,禁止其訪問。賬號限制本課件是可編輯的正常PPT課件(三)反爬蟲的策略網(wǎng)站通過瀏覽器請求信息中的Cookie信息來判斷該請求是否有權(quán)限訪問核心數(shù)據(jù),一般網(wǎng)站直接輸入用戶的賬號和密碼即可成功登錄并獲取Cookie信息。這一操作爬蟲可通過分析網(wǎng)頁HTML源碼來模擬發(fā)送請求,就能正常獲取Cookies信息。于是部分網(wǎng)站設(shè)置了驗證碼等驗證方式,只有成功輸入驗證碼,才能獲取cookie信息。同時,部分網(wǎng)站還會設(shè)置Session方式進行賬號認證,只有獲取服務(wù)器對用戶的唯一標識ID,才能得到Cookies信息。登錄控制本課件是可編輯的正常PPT課件(三)反爬蟲的策略早期簡單網(wǎng)頁采取靜態(tài)網(wǎng)頁方式,網(wǎng)頁所有內(nèi)容都包含在Html源碼里,爬蟲通過偽造請求,獲取網(wǎng)頁HTML源碼并分析HTML源碼,就能提取出自己想要的數(shù)據(jù)。隨著網(wǎng)頁技術(shù)的發(fā)展,動態(tài)網(wǎng)頁逐漸成為主流。動態(tài)網(wǎng)頁相對于靜態(tài)網(wǎng)頁而言,顯示的內(nèi)容可以隨著時間、環(huán)境或者數(shù)據(jù)庫操作的結(jié)果而發(fā)生改變。如果爬蟲只是單純分析Html源碼,將無法獲取有效數(shù)據(jù)。網(wǎng)頁數(shù)據(jù)異步加載本課件是可編輯的正常PPT課件(三)反爬蟲的策略robots協(xié)議也叫做robots.txt,它是一種被放在網(wǎng)站根目錄的文本文件。該文件表明網(wǎng)站哪些內(nèi)容是可以被爬取的,哪些內(nèi)容是不可以被爬取的。當一個爬蟲程序訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,爬蟲程序就會按照該文件中的內(nèi)容來確定訪問的范圍;如果不存在,爬蟲程序?qū)⒛軌蛟L問網(wǎng)站上所有沒有被保護的數(shù)據(jù)。Robots協(xié)議本課件是可編輯的正常PPT課件本任務(wù)學習了爬蟲的基本概念、原理和搜索策略。包括如下內(nèi)容:1.爬蟲基本概念。2.爬蟲分類。3.爬蟲的工作原理。4.爬蟲的搜索策略。5.反爬蟲的策略任務(wù)小結(jié)本課件是可編輯的正常PPT課件1.什么是爬蟲?2.爬蟲主要分為哪幾類?3.通用爬蟲和增量爬蟲的工作原理是什么?4.深度優(yōu)先搜索和廣度優(yōu)先搜索有什么不同?一、簡答題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目一認識大數(shù)據(jù)采集技術(shù)任務(wù)三爬蟲開發(fā)基礎(chǔ)本課件是可編輯的正常PPT課件回顧知識點1爬蟲的定義、類型、原理回顧知識點2爬蟲的搜索策略回顧知識點3反爬蟲的搜索策略回顧本課件是可編輯的正常PPT課件任務(wù)引入我需要獲取數(shù)據(jù),可是我是小白,誰能幫我?本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹網(wǎng)絡(luò)的基本知識,主要包括網(wǎng)頁基本知識、HTTP原理、會話和Cookie。任務(wù)教學目標:熟悉HTTP基礎(chǔ)原理;熟悉網(wǎng)頁基礎(chǔ)知識;掌握會話和Cookies。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容HTTP基本原理網(wǎng)頁基礎(chǔ)一二會話和Cookies三本課件是可編輯的正常PPT課件HTTP基本原理知識點一本課件是可編輯的正常PPT課件全稱是超文本傳輸協(xié)議(HyperTextTransferProtocol)主要實現(xiàn)從客戶端到服務(wù)器端的請求、數(shù)據(jù)傳輸、響應等一系列過程的封裝。(一)HTTP和HTTPS1.什么是HTTP本課件是可編輯的正常PPT課件HTTP是一個4層或5層協(xié)議結(jié)構(gòu),它包含了許多網(wǎng)絡(luò)協(xié)議。(一)HTTP和HTTPS2.HTTP的協(xié)議結(jié)構(gòu)7.應用層6.表示層5.會話層4.運輸層3.網(wǎng)絡(luò)層2.數(shù)據(jù)鏈路層1.物理層應用層(各種應用層協(xié)議)運輸層(TCP或UDP)網(wǎng)絡(luò)層IP網(wǎng)絡(luò)接口層5.應用層4.運輸層3.網(wǎng)絡(luò)層2.數(shù)據(jù)鏈路層1.物理層本課件是可編輯的正常PPT課件全稱是統(tǒng)一資源定位符(UniversalResourceLocator)(一)HTTP和HTTPSURL的結(jié)構(gòu)2.URL它的作用是標記資源在網(wǎng)絡(luò)上的位置。它一般由協(xié)議名稱、主機名、端口號、訪問路徑和資源名稱構(gòu)成。本課件是可編輯的正常PPT課件全稱是HyperTextTransferProtocoloverSecureSocketLayer(一)HTTP和HTTPS3.HTTPS其實就是在HTTP的基礎(chǔ)之上加了一個安全層SSL(SecureSocketLayer)。HTTPS可以保障數(shù)據(jù)在傳輸過程中的安全。本課件是可編輯的正常PPT課件當輸入網(wǎng)址并按回車鍵后,瀏覽器就向網(wǎng)站的服務(wù)器發(fā)送了一個請求;網(wǎng)站服務(wù)器接收到這個請求之后對該請求進行處理和解析,找到客戶端所需要的資源,不論是否找到,服務(wù)器會生成一個響應,然后返回給客戶端;響應里面包含了客戶端請求的資源信息以及其他狀態(tài)信息等內(nèi)容,瀏覽器再對其進行解析并將結(jié)果顯示在瀏覽器中。(二)HTTP請求過程HTTP請求過程本課件是可編輯的正常PPT課件Chrome瀏覽器的網(wǎng)絡(luò)開發(fā)者模式可以清楚地看到請求的數(shù)據(jù)。(二)HTTP請求過程網(wǎng)絡(luò)開發(fā)者模式本課件是可編輯的正常PPT課件點擊URL可以看到請求和響應等數(shù)據(jù)。(二)HTTP請求過程請求和響應數(shù)據(jù)本課件是可編輯的正常PPT課件第一列Name:請求網(wǎng)頁的名稱,即URL第二列Status:即響應的狀態(tài)碼。如果顯示為200,表示響應的正常的,這里顯示的304,表示文檔未修改。如果出現(xiàn)異常,會顯示同狀態(tài)碼,通過狀態(tài)碼可以了解服務(wù)器的響應狀態(tài)。第三列Type:即請求的文檔類型。如果是document,表示請求的是一個HTML文檔。第四列nitiator:即請求源。用來記錄請求發(fā)起的對象或進程。第五列ize:即請求的資源大小。第六列Time:即發(fā)起請求到獲得響應之間的時間。第七列Timeline:即網(wǎng)絡(luò)請求的時間線。(二)HTTP請求過程本課件是可編輯的正常PPT課件常見的請求方式有兩種:GET和POST。在GET請求方式中,參數(shù)是包含在URL里面的,數(shù)據(jù)可以在URL中看到。POST請求的URL不會包含參數(shù)信息,參數(shù)通過表單的形式傳輸,表單是包含在請求體中。(三)請求(Request)1.請求方式(RequestMethod)本課件是可編輯的正常PPT課件客戶端請求的網(wǎng)址。(三)請求(Request)2.請求URL(RequestURL)它包含了許多請求信息,在爬取網(wǎng)絡(luò)數(shù)據(jù)中,會用到這一部分內(nèi)容。其中比較重要的信息有Cookie、Referrer、User-Agent等。3.請求頭(RequestHeaders)本課件是可編輯的正常PPT課件Accept:指定客戶端可接受的內(nèi)容類型。Accept-Language:指定瀏覽器可接受的語言。Accept-Encoding:指定瀏覽器可以支持的web服務(wù)器返回內(nèi)容壓縮編碼類型。Host:指定請求的服務(wù)器的域名和端口號。Cookie:HTTP請求發(fā)送時,會把保存在該請求域名下的所有cookie值一起發(fā)送給web服務(wù)器。Referer:先前網(wǎng)頁的地址,當前請求網(wǎng)頁緊隨其后,即來路。User-Agent:包含發(fā)出請求的用戶信息。它是一個特殊字符串頭,使得服務(wù)器能夠識別客戶使用的操作系統(tǒng)及版本、瀏覽器及版本等信息。Content-Type:請求的與實體對應的MIME信息。例如text/html代表HTML格式,image/gif代表GIF圖片,application/json代表JSON類型等。(三)請求(Request)3.請求頭(RequestHeaders)本課件是可編輯的正常PPT課件對于POST,請求體是POST請求中的表單數(shù)據(jù),而對于GET請求體則為空。(三)請求(Request)4.請求體(RequestBody)本課件是可編輯的正常PPT課件響應狀態(tài)碼表示了服務(wù)器的響應狀態(tài):200則代表服務(wù)器正常響應404代表頁面未找到500代表服務(wù)器內(nèi)部發(fā)生錯誤等(四)響應(Response)1.響應代碼(ResponseCode)分類分類描述1**信息,服務(wù)器收到請求,需要請求者繼續(xù)執(zhí)行操作2**成功,操作被成功接收并處理3**重定向,需要進一步的操作以完成請求4**客戶端錯誤,請求包含語法錯誤或無法完成請求5**服務(wù)器錯誤,服務(wù)器在處理請求的過程中發(fā)生了錯誤本課件是可編輯的正常PPT課件響應頭包含了服務(wù)器對請求的響應信息,如Content-Type、Server、Set-Cookie等。(四)響應(Response)2.響應頭(ResponseHead)本課件是可編輯的正常PPT課件響應體是響應中最主要的內(nèi)容,客戶端請求的數(shù)據(jù)都放在響應體中。(四)響應(Response)3.響應體(ResponseBody)本課件是可編輯的正常PPT課件網(wǎng)頁基礎(chǔ)知識點二本課件是可編輯的正常PPT課件(一)網(wǎng)頁與網(wǎng)站網(wǎng)頁是網(wǎng)站的基本組成元素,一個網(wǎng)站通常由大量的網(wǎng)頁構(gòu)成。網(wǎng)頁是網(wǎng)站信息基本載體,它可以包含文字、圖片、動畫、音頻、視頻等多種數(shù)據(jù),同時為了實現(xiàn)網(wǎng)頁之間和頁面內(nèi)部的跳轉(zhuǎn),網(wǎng)頁還包含許多鏈接。網(wǎng)頁除采用HTML語言編寫外,還包括腳本語言、CSS等。動態(tài)網(wǎng)頁A靜態(tài)網(wǎng)頁B本課件是可編輯的正常PPT課件(二)靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁在靜態(tài)網(wǎng)頁中,客戶端使用Web瀏覽器(IE、Chrome等)通過網(wǎng)絡(luò)與服務(wù)器建立連接,采用HTTP協(xié)議向服務(wù)器發(fā)起一個請求(Request),告訴服務(wù)器需要得到哪個頁面,服務(wù)器接收到客戶端請求后,尋找客戶端請求的數(shù)據(jù)。一旦找到,Web服務(wù)器就返回給客戶端,客戶端接收到內(nèi)容之后經(jīng)過瀏覽器解析,得到顯示的效果。1.靜態(tài)網(wǎng)頁本課件是可編輯的正常PPT課件(二)靜態(tài)網(wǎng)頁與動態(tài)網(wǎng)頁在動態(tài)網(wǎng)頁中,客戶端使用HTTP協(xié)議發(fā)起請求(Request),如果客戶端請求的是靜態(tài)資源,則將請求直接轉(zhuǎn)交給Web服務(wù)器,之后Web服務(wù)器從文件系統(tǒng)中取出內(nèi)容,發(fā)送回客戶端瀏覽器進行解析執(zhí)行。如果客戶端請求的是動態(tài)資源,則先將請求轉(zhuǎn)交給WEBContainer(WEB容器),在WebContainer中執(zhí)行相關(guān)服務(wù)器端的程序,然后動態(tài)組成頁面的展示內(nèi)容,再把所有的展示內(nèi)容交給WEB服務(wù)器,之后通過WEB服務(wù)器將內(nèi)容發(fā)送回客戶端瀏覽器進行解析執(zhí)行。2.動態(tài)網(wǎng)頁客戶端發(fā)送請求返回頁面服務(wù)器端接受請求,查找頁面發(fā)送頁面動態(tài)Web頁面動態(tài)Web頁面本課件是可編輯的正常PPT課件會話和Cookies知識點三本課件是可編輯的正常PPT課件(一)無狀態(tài)HTTP無狀態(tài)HTTP是指HTTP協(xié)議對事務(wù)處理是沒有記憶的,服務(wù)器不知道客戶端的連接狀態(tài)。當客戶端向服務(wù)器發(fā)送請求后,服務(wù)器解析此請求,然后返回對應的響應,這就是一次會話(連接)過程,這個過程與之前的連接狀態(tài)沒有任何關(guān)系,是一次獨立的連接會話過程,與之前的會話過程無關(guān)。因此如果這個會話過程中斷或者結(jié)束,那么在下一次建立連接時就要重復上述過程。本課件是可編輯的正常PPT課件(二)Cookies為了使用戶在離開網(wǎng)站后還能夠利用以前的狀態(tài)信息連接到網(wǎng)站,就需要將狀態(tài)數(shù)據(jù)永久存儲。1.會話維持利用Cookie保持會話本課件是可編輯的正常PPT課件(二)Cookies可以通過Chrome的開發(fā)者模式查看Cookies的內(nèi)容。打開Application選項卡,在左側(cè)會找到Storage,最后一項即為Cookies。2.Cookie屬性結(jié)構(gòu)本課件是可編輯的正常PPT課件(二)CookiesCookie名稱:Cookie名稱必須使用只能用在URL中的字符。Cookie值:Cookie的取值,可以進行轉(zhuǎn)碼和加密。Expires:過期日期。Path:可以訪問Cookie的文件路徑。Domain:子域,指定可以訪問Cookie的域。Secure:安全性,指定Cookie是否只能通過https協(xié)議訪問,一般的Cookie使用HTTP協(xié)議即可訪問,但如果設(shè)置了Secure,則只有使用https協(xié)議連接時cookie才可以被頁面訪問。HttpOnly:如果在Cookie中設(shè)置了"HttpOnly"屬性,那么通過程序(JS腳本、Applet等)將無法讀取到Cookie信息。2.Cookie屬性結(jié)構(gòu)本課件是可編輯的正常PPT課件(二)Cookies會話Cookie就是把Cookie放在瀏覽器內(nèi)存里,瀏覽器在關(guān)閉之后該Cookie即失效,這相當于高級語言的一個內(nèi)存變量;持久Cookie則會保存到客戶端的硬盤中,下次還可以繼續(xù)使用,這相當于高級語言的文件。3.會話Cookie和持久Cookie本課件是可編輯的正常PPT課件本任務(wù)學習了網(wǎng)頁的基礎(chǔ)知識、HTTP基本原理和Cookie。包括如下內(nèi)容:1.HTTP的基本原理。2.網(wǎng)頁請求與響應的過程及相關(guān)數(shù)據(jù)。3.
Cookie的作用。任務(wù)小結(jié)本課件是可編輯的正常PPT課件1.HTTP請求和響應的過程?2.動態(tài)網(wǎng)頁和靜態(tài)網(wǎng)頁的區(qū)別?3.如何保持網(wǎng)絡(luò)會話狀態(tài)?一、簡答題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目二配置爬蟲環(huán)境任務(wù)一安裝Python3本課件是可編輯的正常PPT課件回顧知識點1大數(shù)據(jù)概念及大數(shù)據(jù)特性回顧知識點2爬蟲的概念及原理回顧知識點3反爬蟲的策略回顧回顧知識點4網(wǎng)頁及HTTP的原理本課件是可編輯的正常PPT課件任務(wù)引入工欲善其事,必先利其器,沒有開發(fā)環(huán)境,是無法編寫出好程序的。本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹Python在Windows和Linux下的安裝以及集成開發(fā)環(huán)境的安裝與配置。任務(wù)教學目標:掌握Python在windows和Linux的安裝。掌握Anaconda創(chuàng)建Python的虛擬環(huán)境。掌握集成開發(fā)環(huán)境(Pycharm)對Python的配置。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容Python在Windows下的安裝Python在Linux下的安裝一二本課件是可編輯的正常PPT課件Python在Windows下的安裝知識點一本課件是可編輯的正常PPT課件Python是跨平臺的程序設(shè)計語言,創(chuàng)建于20世紀90年代初,由荷蘭人吉多·范羅蘇姆(GuidovanRossum)創(chuàng)建。Python具有簡單、易學、速度快、免費、開源、可移植性好等優(yōu)點的解釋性語言。Python是大數(shù)據(jù)和人工智能的主要開發(fā)語言。(一)Python簡介本課件是可編輯的正常PPT課件Python3的安裝包可以到Python的官網(wǎng)上下載。官網(wǎng)的地址是:/downloads/(二)Windows下安裝Python下載Python安裝包本課件是可編輯的正常PPT課件(二)Windows下安裝Python2.直接運行Python安裝包安裝Python本課件是可編輯的正常PPT課件在Windows的開始菜單點擊右鍵,在彈出的菜單中選擇命令提示符或命令提示符(管理員),進入命令行模式。在命令行窗口中輸Python命令,如果能夠出現(xiàn)>>>提示符并顯示版本號,就表示Python安裝成功。(二)Windows下安裝Python3.驗證Python是否安裝成功驗證Python是否安裝成功本課件是可編輯的正常PPT課件Anaconda是一個開源的Python發(fā)行版本,它包含了conda、Python等180多個工具包及其依賴組件??梢缘紸naconda的官網(wǎng)下載最新版本下載地址為:/products/individual(二)Anaconda安裝Python1.下載并安裝Anaconda本課件是可編輯的正常PPT課件安裝完成后,單擊開始菜單Anaconda3(64bit)Anacondaprompt,輸入pyhton,就可以看到Anaconda內(nèi)置的Pyhton版本。(二)Anaconda安裝Python2.查看Anaconda內(nèi)置Python版本查看Anaconda內(nèi)置Python版本本課件是可編輯的正常PPT課件在Anaconda中配置虛擬環(huán)境,可以隔絕不同的開發(fā)系統(tǒng),使之互不影響。例如可以是Python2.x和Python3.x互不干擾。創(chuàng)建虛擬環(huán)境命令如圖所示:(二)Anaconda安裝Python3.配置Anaconda虛擬環(huán)境本課件是可編輯的正常PPT課件在Anaconda中配置好虛擬環(huán)境后,可以使用Condaactivate命令進入虛擬環(huán)境。(二)Anaconda安裝Python4.激活Anaconda虛擬環(huán)境激活虛擬環(huán)境本課件是可編輯的正常PPT課件可以使用Condalist命令查看虛擬環(huán)境安裝的組件。(二)Anaconda安裝Python5.查看當前虛擬環(huán)境中安裝的組件本課件是可編輯的正常PPT課件可以使用Condaremove命令刪除虛擬環(huán)境。如:C:\condaremove-nmypython–all。(二)Anaconda安裝Python6.刪除虛擬環(huán)境本課件是可編輯的正常PPT課件本任務(wù)以Pycharm作為Python集成開發(fā)環(huán)境,首先到Pycharm官網(wǎng)上下載Pycharm。網(wǎng)址是:/zhcn/pycharm/download/#section=windows安裝過程和其他軟件一樣。(三)安裝Python集成開發(fā)環(huán)境1.下載并安裝Pycharm本課件是可編輯的正常PPT課件安裝成功后新建一個工程。(三)安裝Python集成開發(fā)環(huán)境2.配置Pycharm
創(chuàng)建Pycharm工程本課件是可編輯的正常PPT課件在創(chuàng)建好的工程右鍵點擊文件->Project->Settings,彈出配置對話框。(三)安裝Python集成開發(fā)環(huán)境2.配置Pycharm
Pycharm工程配置對話框本課件是可編輯的正常PPT課件點擊對話框右上方圓圈標記的按鈕,選擇Add。在彈出的對話框中左邊選擇CondaEnvironment,右邊選擇ExistingEnvironment,同時選擇在剛剛建立的mypython虛擬環(huán)境下安裝的Python路徑。(三)安裝Python集成開發(fā)環(huán)境2.配置Pycharm
本課件是可編輯的正常PPT課件Python在Linux下的安裝知識點二本課件是可編輯的正常PPT課件首先在虛擬機上安裝Linux,本教材采用UbuntuLinux,虛擬機采用Virtualbox。具體過程請參照相關(guān)資料。(一)Linux下安裝Python1.安裝Linux本課件是可編輯的正常PPT課件(一)Linux下安裝Python2.安裝Python最新版本第四步~$sudoapt-getupdate第三步~$sudoadd-apt-repositoryppa:deadsnakes/ppa第二步~$sudoapt-getinstallsoftware-properties-commom。第一步~$sudoaptupdate第五步~$sudoapt-getinstallpython3.9本課件是可編輯的正常PPT課件官網(wǎng)下載Anaconda的Linux版本。下載完畢后執(zhí)行如圖所示的命令。(一)Linux下安裝Python3.Linux下通過Anaconda安裝PythonLinux下安裝Anaconda本課件是可編輯的正常PPT課件安裝成功后可以通過如下命令來檢驗:(一)Linux下安裝Python3.Linux下通過Anaconda安裝Python檢驗Anaconda是否安裝成功本課件是可編輯的正常PPT課件(二)Linux安裝Python集成開發(fā)環(huán)境1.安裝Python集成開發(fā)環(huán)境第三步/usr/local/pycharm$./bin/pycharm.sh第二步~$cd/usr/local/pycharm第一步~$sudotar–zxvfpycharm-community-2020.3.2.tar.gz–C/usr/local/pycharm本課件是可編輯的正常PPT課件本任務(wù)學習了Python在Windows和Linux下的安裝過程。包括如下內(nèi)容:1.Python在Windows和Linux下的安裝。2.使用Anaconda在Windows和Linux下安裝Python。3.Pycharm在Windows和Linux下的安裝和配置。任務(wù)小結(jié)本課件是可編輯的正常PPT課件1.在計算機上完成Python在Windows和Linux下的安裝。2.使用Anaconda安裝Python。3.在Windows和Linux下安裝Pycharm,并配置Python環(huán)境。教師檢查安裝結(jié)果。一、操作題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目二配置爬蟲環(huán)境任務(wù)二安裝請求庫本課件是可編輯的正常PPT課件回顧知識點1Python的概念回顧知識點2Python的幾種安裝方式回顧知識點3集成開發(fā)環(huán)境的安裝和配置回顧本課件是可編輯的正常PPT課件任務(wù)引入Python安裝好了,可是如何向網(wǎng)絡(luò)發(fā)送請求呢?需要我自己從底層寫起嗎?那可太難了。本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹請求庫的安裝,請求庫可以幫助用戶實現(xiàn)網(wǎng)絡(luò)的各種請求,簡化開發(fā)的過程。任務(wù)教學目標:掌握Requests的安裝。掌握Selenium的安裝。掌握Chromedirver的安裝。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容安裝Requests安裝Selenium一二三安裝ChromeDriver本課件是可編輯的正常PPT課件安裝Requests知識點一本課件是可編輯的正常PPT課件Request是Python用于向網(wǎng)絡(luò)發(fā)送請求的庫,Requests庫包含了大量用于向網(wǎng)絡(luò)發(fā)送請求的方法。安裝Requests庫采用如下命令:Pipinstallrequests安裝請求庫(一)安裝Requests本課件是可編輯的正常PPT課件如果在Pycharm中安裝,則打開如圖所示對話框,單擊右上角的+號,在上面文本框中輸入requests,稍等片刻就會在右邊Description中出現(xiàn)requests的最新版本號、作者等相關(guān)信息。然后點擊InsatallPackage就可進行安裝。在Pycharm中安裝請求庫(一)安裝Requests本課件是可編輯的正常PPT課件導入Requests只需要以下Python語句:>>>importrequests(二)導入Requests本課件是可編輯的正常PPT課件安裝Selenium知識點二本課件是可編輯的正常PPT課件Selenium是一個自動化測試工具,通過它所提供的函數(shù)可以模擬人自動地操作瀏覽器。這對于用代碼渲染出來的網(wǎng)頁特別有用。(一)Selenium簡介本課件是可編輯的正常PPT課件(二)安裝Selenium安裝SeleniumSelenium的安裝方法和Requests一樣,可以用pip安裝或者在Pycharm中安裝。在Linux中安裝命令如下:pipinstallSelenium在Pycharm安裝和Requests一樣。本課件是可編輯的正常PPT課件導入Selenium只需要以下Python語句:>>>importSelenium如果沒有報錯,則表示安裝成功。(二)導入Selenium本課件是可編輯的正常PPT課件安裝Chromedriver知識點三本課件是可編輯的正常PPT課件Chromedriver是一個Chrome的驅(qū)動程序,當測試程序模擬用戶操作瀏覽器的時候,Chromedriver測試工具可以實現(xiàn)與瀏覽器的交互。Chromedriver的官方網(wǎng)站為:/a//chromedriver。下載地址為:/index.html(一)Chromedriver簡介本課件是可編輯的正常PPT課件不同的Chromedirver版本和Chrome版本之間有對應關(guān)系。用戶要根據(jù)自己Chrome瀏覽器的版本號選擇相應的chromedriver版本。(二)Chromedriver與Chrome瀏覽器版本對應關(guān)系chromedriver與chrome的對應關(guān)系本課件是可編輯的正常PPT課件下載完成后,直接將Chromedriver拷貝至Python的scripts目錄下。(三)
安裝chromedriver拷貝chromedriver至pythonscripts目錄下本課件是可編輯的正常PPT課件進入python環(huán)境,輸入如下所示的語句,如果彈出一個空白的chrome瀏覽器,則說明Chromedriver安裝配置成功。(三)檢驗Chromedriver是否安裝成功>>>importwebdriver>>>browser.webdriver.Chrome()本課件是可編輯的正常PPT課件本任務(wù)學習了請求庫的安裝過程。包括如下內(nèi)容:1.Requests庫的安裝。2.Selenium庫的安裝。3.Chromedriver的安裝。任務(wù)小結(jié)本課件是可編輯的正常PPT課件在計算機上完成Requests的安裝,并驗證。2.在計算機上完成Selenium的安裝,并驗證。3.在計算機上完成chromedriver的安裝,并驗證。教師檢查安裝結(jié)果。一、操作題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目二配置爬蟲環(huán)境任務(wù)三安裝解析庫本課件是可編輯的正常PPT課件回顧知識點1Python的概念回顧知識點2Python的幾種安裝方式回顧知識點3集成開發(fā)環(huán)境的安裝和配置回顧本課件是可編輯的正常PPT課件任務(wù)引入1數(shù)據(jù)爬下來了,可是如何解析數(shù)據(jù)呢?本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹解析庫的安裝,解析庫可以幫助用戶實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的解析與提取。任務(wù)教學目標:掌握lxml的安裝。掌握BeautifulSoap的安裝。掌握Pyquery的安裝。掌握MySQL和PyMySQL的安裝任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容安裝lxml安裝BeautifulSoap一二安裝PyQuery安裝MySQl和pyMySQL三四本課件是可編輯的正常PPT課件安裝lxml知識點一本課件是可編輯的正常PPT課件lxml用于對XML和HTML格式的數(shù)據(jù)解析,通過lxml,可以提取XML或HTML中的數(shù)據(jù)。XPATH表示XML或HTML中數(shù)據(jù)的路徑,XPATH通過路徑對XML或HTML中的數(shù)據(jù)進行選擇和提取。安裝lxml用如下命令:pipinstalllxml(一)lxml的安裝本課件是可編輯的正常PPT課件安裝BeautifulSoap知識點二本課件是可編輯的正常PPT課件BeautifulSoup是一個用于解析xml和html的解析庫。它的一個優(yōu)點在于不用寫正則表達式即可解析XML和HTML。安裝BeautifulSoap用如下命令:pipinstallbeautifulsoap(一)BeautifulSoap的安裝本課件是可編輯的正常PPT課件可輸入如下代碼驗證BeaufulSoap是否安裝成功:(二)驗證BeautifulSoap是否安裝成功>>>frombs4importBeautifulSoap>>>bs=BeautifulSoap(’<p>Welcome</p>’)>>>print(bs.p.string)Wlcome本課件是可編輯的正常PPT課件安裝Pyquery知識點三本課件是可編輯的正常PPT課件Pyquery提供了更為簡易的使用方法,它擁有強大的CSS解析器,可以像使用jquery一樣來獲取數(shù)據(jù)。安裝Pyquery用如下命令:pipinstallpyquery(一)安裝Pyquery本課件是可編輯的正常PPT課件安裝MySQL和pyMySql知識點四本課件是可編輯的正常PPT課件MySQL也是目前Web系統(tǒng)常用的數(shù)據(jù)庫之一。和傳統(tǒng)數(shù)據(jù)庫如SQLServer、Oracle不同,MySQL是一個開源的數(shù)據(jù)庫系統(tǒng),不但支持小型的數(shù)據(jù)庫,也支持大型的數(shù)據(jù)庫。下載官網(wǎng):/downloads/installer/(一)Windows下安裝MySQL第二步運行mysqld--initialize–console初始化數(shù)據(jù)庫。第一步進入bin目錄,輸入netstartmysql啟動mysql服務(wù)。本課件是可編輯的正常PPT課件紅色部分是MySQL的初始密碼,需要記住并修改。(一)Widows下安裝MySQLD:\mysql\bin>Mysqld–inittilize–user=mysql–console……………Generratedforroot@localhost:dgbd&_ic.5zD……….本課件是可編輯的正常PPT課件命令安裝:
apt-getinstallmysql-server安裝完成后輸入如下命令啟動并進入MySQL:(二)Linux下安裝MySQL~$servicemysqlstart#啟動MySQL~$mysql–uroot–p#登陸MySQL本課件是可編輯的正常PPT課件在Python中如果要訪問MySQL數(shù)據(jù)庫,就必須安裝PymySql組件。采用pip命令安裝:
pipinstallpymysql采用如下代碼驗證:(三)安裝PyMySQL>>>importpymysql>>>pymysql,VERSION>>>(1,0,2,None)本課件是可編輯的正常PPT課件本任務(wù)學習了解析庫的安裝過程。包括如下內(nèi)容:1.lxml庫的安裝。2.BeautifulSoap庫的安裝。3.pyquery的安裝。4.MySQL和pymysql的安裝。任務(wù)小結(jié)本課件是可編輯的正常PPT課件在計算機上完成lxml的安裝,并驗證。在計算機上完成BeautifulSoap的安裝,并驗證。在計算機上完成pyquery的安裝,并驗證。在計算機上完成MySQL和pymysql的安裝,并驗證。教師檢查安裝結(jié)果。一、操作題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目二配置爬蟲環(huán)境任務(wù)四安裝數(shù)據(jù)庫、存儲庫及爬蟲框架本課件是可編輯的正常PPT課件回顧知識點1安裝lxml庫回顧知識點2安裝BeautifulSoap庫回顧知識點3安裝pyquery,MySQL以及pymysql庫回顧本課件是可編輯的正常PPT課件任務(wù)引入數(shù)據(jù)爬下來了,可是如何存儲數(shù)據(jù)呢?本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹數(shù)據(jù)庫和存儲庫的安裝以及相關(guān)Pythoon庫的安裝。這里的數(shù)據(jù)庫或存儲主要指NoSQL數(shù)據(jù)庫,例如MongoDB和Redis。本任務(wù)介紹爬蟲框架的安裝。任務(wù)教學目標:掌握Mongodb和Redis數(shù)據(jù)庫在Windows和Linux下的安裝。掌握pymongo、Redis-py和Redisdump的安裝。掌握Scrapy的安裝過程。任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容安裝MongoDB和Pymongo安裝Redis,redis-py和rdisdump一二安裝Scrapy三本課件是可編輯的正常PPT課件安裝MongoDB和pymongo庫知識點一本課件是可編輯的正常PPT課件MongoDB是文檔數(shù)據(jù)庫,在Windows下安裝mongoDB,需要下載安裝文件。下載地址為:/try/download/community?jmp=nav(一)在Windows下安裝MongoDB1.安裝MongoDB本課件是可編輯的正常PPT課件接下來可以創(chuàng)建目錄data\db,比如在C盤下創(chuàng)建該目錄結(jié)構(gòu)。接著運行如下命令啟動MongoDB服務(wù):(一)在Windows下安裝MongoDBC:\MongoDB\data\dbC:\mongod–dbpathc:\data\db2.啟動MongoDB服務(wù)本課件是可編輯的正常PPT課件如果要持續(xù)使用MongoDB,這個命令行窗口就必須一直打開,不可關(guān)閉。接著用管理員身份再打開另一個命令行窗口,輸入mongo命令,連接到Mongodb數(shù)據(jù)庫:(一)在Windows下安裝MongoDB3.連接MongoDB數(shù)據(jù)庫本課件是可編輯的正常PPT課件在Linux下安裝MongoDB只需要運行apt-get命令:apt-getinstallmongdb安裝完成后輸入如下命令,輸出mongoDB版本號則表示安裝成功:mongo-version(二)在Linux下安裝MongoDB1.安裝MongoDB數(shù)據(jù)庫本課件是可編輯的正常PPT課件Pymongo是Python與mongodb交互的庫,如果Python程序需要訪問mongodb數(shù)據(jù),就必須通過Pymongo庫。使用pip命令安裝:pipinstallpymongo(三)Pymongo庫的安裝本課件是可編輯的正常PPT課件安裝Redis、redis-py和dumpredis知識點二本課件是可編輯的正常PPT課件Redis是一個基于鍵-值對的數(shù)據(jù)庫系統(tǒng),即鍵值對非關(guān)系型數(shù)據(jù)庫。是一個高性能的key-value數(shù)據(jù)庫。Redis的安裝程序可以到GitHub上下載,也可以到官網(wǎng)上下載。(一)Redis的安裝1.Redis簡介本課件是可編輯的正常PPT課件在Windows下雙擊下載的安裝文件即可安裝。(一)Redis的安裝1.Redis在Windows下的安裝本課件是可編輯的正常PPT課件Redis在Linux下通過解壓后采用源碼編譯方式安裝。命令如下:(一)Redis的安裝2.Redis在Linux下的安裝~$make~$makeinstall安裝完成后輸入如下命令啟動Redis:~$cd/usr/local/redis~$./src/redis-server本課件是可編輯的正常PPT課件出現(xiàn)如下畫面則安裝成功:(一)Redis的安裝2.Redis在Linux下的安裝本課件是可編輯的正常PPT課件為了使用Redis,保持上面窗口不要關(guān)閉,再開一個新的窗口,輸入如下命令即可使用Redis:(一)Redis的安裝2.Redis在Linux下的安裝~$cd/usr/local/redis~$./src/redis-cli本課件是可編輯的正常PPT課件為了使Python能夠訪問Redis數(shù)據(jù)需要安裝redis-py庫,同樣使用pip命令:pipinstallredis輸入如下代碼查看redis-py是否安裝成功:(二)安裝redis-py庫和dumpredis1.安裝redis-py庫>>>importredis>>>redis.VERSION>>>(3,5,3)本課件是可編輯的正常PPT課件RedisDump是一個將Redis與Json轉(zhuǎn)換的工具,用于導入導出Redis數(shù)據(jù),它是基于Ruby開發(fā),因此安裝RedisDump需要首先安裝Ruby。(二)安裝redis-py庫和dumpredis2.安裝dumprdis庫~$apt-getinstallruby-full#安裝Ruby~$Ruby–v#驗證Ruby是否安裝成功~$Ruby2.3.1p112(2016-04-26)[x86_64-linux-gnu]~$geminstallredis-dum#安裝dumprdis本課件是可編輯的正常PPT課件安裝Scrapy知識點三本課件是可編輯的正常PPT課件如果已經(jīng)安裝了Anaconda,就可以運行condainstallscrapy安裝。Scrapy不能在Python3.9以上版本安裝,Scrapy支持的版本范圍為:2.7~2.8,3.5~3.6,3.6~3.7,3.7~3.8,3.8~3.9。安裝命令如下:(一)在Anaconda下安裝Scrapycondainstallscrapy本課件是可編輯的正常PPT課件在Windows下安裝Scrapy只需要輸入pipinstallscrapy命令即可。在安裝過程中會將scrapy依賴的庫一起裝上。(二)在Windows下安裝Scrapy本課件是可編輯的正常PPT課件在Linux下安裝Scrapy首先需要安裝相關(guān)庫,然后再安裝Scrapy。命令如下:(三)在Linux下安裝Scrapy~$sudoapt-getinstallpython-devpython-piplibxml2-devlibxslt1-devzlib1g-devlibffi-devlibssl-dev~$pipinstallscrapy本課件是可編輯的正常PPT課件本任務(wù)學習了數(shù)據(jù)庫和存儲庫的安裝過程。包括如下內(nèi)容:1.MongDB和pymongo的安裝。2.Redis以及redis-py,dumpredis庫的安裝。3.安裝Scrapy任務(wù)小結(jié)本課件是可編輯的正常PPT課件在計算機上完成MongoDB的安裝,并驗證。在計算機上完成pymongo的安裝,并驗證。在計算機上完成Redis的安裝,并驗證。在計算機上完成redis-py和dumpredis的安裝,并驗證。在計算機上完成使用Anaconda安裝Scrapy。在計算機上完成Windows下安裝Scrapy。在計算機上完成Linux安裝Scrapy。教師檢查安裝結(jié)果。一、操作題作業(yè)本課件是可編輯的正常PPT課件謝謝!THANKS!本課件是可編輯的正常PPT課件《大數(shù)據(jù)采集與應用》本課件是可編輯的正常PPT課件大數(shù)據(jù)采集與應用項目三使用數(shù)據(jù)爬取相關(guān)庫任務(wù)一使用請求庫本課件是可編輯的正常PPT課件回顧知識點1Python在Windows和Linux的安裝和配置回顧知識點2請求庫的安裝回顧知識點3解析庫的安裝回顧回顧知識點4數(shù)據(jù)庫及存儲庫的安裝本課件是可編輯的正常PPT課件任務(wù)引入所有的組件都已經(jīng)安裝好了,那么應該從什么地方開始呢?那就從數(shù)據(jù)請求開始吧。本課件是可編輯的正常PPT課件任務(wù)描述:本任務(wù)介紹請求庫的使用方法。請求庫用于向服務(wù)器發(fā)送數(shù)據(jù)請求,請求庫提供了許多方法來滿足用戶各種請求的需要。任務(wù)教學目標:掌握URLlib的數(shù)據(jù)獲取方法。掌握Requests的數(shù)據(jù)獲取方法任務(wù)概要本課件是可編輯的正常PPT課件教學內(nèi)容使用URLlib抓取數(shù)據(jù)解析連接一二使用URLlib抓取數(shù)據(jù)解析連接一二使用Requests抓取數(shù)據(jù)三本課件是可編輯的正常PPT課件使用URLlib獲取數(shù)據(jù)知識點一本課件是可編輯的正常PPT課件urllib.request模塊定義了適用于在各種復雜情況下打開URL(主要為HTTP)的函數(shù)和類,例如基本認證、摘要認證、重定向、cookies等。(一)發(fā)送請求urlopen#程序3.1:importurllib.requestresponse=urllib.request.urlopen('')print(response.read().decode('utf-8'))本課件是可編輯的正常PPT課件urlopen除了url這個參數(shù)外,還可以攜帶其他參數(shù),urlopen方法的完整聲明如下:(一)發(fā)送請求urlopenurllib.request.urlopen(url,data=None,[timeout,]*,cafile=None,capath=None,cadefault=False,context=None)本課件是可編輯的正常PPT課件url:需要訪問的URL。data:一般為請求頭,如果不需要請求頭,則設(shè)置為None。timeout:設(shè)置請求超時時間,以秒為單位,如果超過時間沒有得到相應,則連接失敗。cafile,capath和cadefault:三個參數(shù)在Python3.6以后已經(jīng)取消,所以只需采用默認設(shè)置即可。context:指定SSL設(shè)置。(一)發(fā)送請求urlopen本課件是可編輯的正常PPT課件程序3.1的運行結(jié)果如下:(一)發(fā)送請求urlopen本課件是可編輯的正常PPT課件例子2:說明data參數(shù)的用法,訪問httpbin這個網(wǎng)頁。(一)發(fā)送請求urlopen#程序3.2importurllib.requestimporturllib.parsedata=bytes(urllib.parse.urlencode({'word':'china'}),encoding='utf-8')response=urllib.request.urlopen('/post',data)print(response.read().decode('utf-8'))本課件是可編輯的正常PPT課件程序3.2的運行結(jié)果:(一)發(fā)送請求urlopen本課件是可編輯的正常PPT課件(二)urllib.request類雖然urlopen()方法可以實現(xiàn)對服務(wù)器的連接,但urlopen僅僅提供基本的連接功能,對于較urllib.requests類為復雜的連接,如請求中需要加入Headers等信息,則需要urllib.request類來實現(xiàn)。#程序3.3importurllib.requestrequest=urllib.request.Request('')response=urllib.request.urlopen(request)print(response.read().decode('utf-8'))本課件是可編輯的正常PPT課件這里沒有直接將URL傳遞給urlopen,而是先初始化Request對象request,然后將request對象作為參數(shù)傳遞給urlopen。urllib.request.Request構(gòu)造函數(shù)的聲明如下:(二)urllib.request類urllib.request.Request(url,data=None,headers={},origin_req_host=None,unverifiable=False,method=None)本課件是可編輯的正常PPT課件url:要請求的url。data:需要傳遞的數(shù)據(jù),data必須是bytes類型,如果是字典,可用urllib.parse模塊里的urlencode()編碼。Headers:請求頭。origin_req_host:指定請求方的host名稱或者ip地址。unverifiable:設(shè)置網(wǎng)頁是否需要驗證,默認是False,一般不用設(shè)置。method:指定請求使用的方法,比如GET,POST和PUT等。(二)urllib.request類本課件是可編輯的正常PPT課件例子:1(二)urllib.request類#程序3.4fromurllibimportrequestfromurllibimportparseurl='/post'headers={'User-Agent':'Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)''Chrome/88.0.4324.150Safari/537.36','Host':'',本課件是可編輯的正常PPT課件例子2:(二)urllib.request類'Connection':'keep-alive'}dict={'name':'china'}data=bytes(parse.urlencode(dict),encoding='utf8')req=request.Request(url=url,data=data,headers=headers,method='POST')response=request.urlopen(req)print(response.read().decode('utf-8'))本課件是可編輯的正常PPT課件這里為request加了一個header,同時還發(fā)送一個data數(shù)據(jù)。Heades里面內(nèi)容可以從Chrome的開發(fā)者模式中復制出來。(二)urllib.request類本課件是可編輯的正常PPT課件程序3.4的運行結(jié)果:(二)urllib.request類本課件是可編輯的正常PPT課件Headers也可以使用add_header方法添加,add_header方法的聲明如下:(二)urllib.request類Request.add_header(key,val)本課件是可編輯的正常PPT課件如果要處理更為復雜的爬取任務(wù),比如要處理與Cookie有關(guān)的任務(wù),這就需要用到urllib的Handler類,這些類可以處理更為復雜的情況。(三)Handler類#程序3.5:importhttp.cookiejar,urllib.requestcookies=http.cookiejar.CookieJar()handler=urllib.request.HTTPCookieProcessor(cookies)opener=urllib.request.build_opener(handler)response=opener.open('')foritemincookies:print(+"="+item.value)本課件是可編輯的正常PPT課件解析鏈接知識點二本課件是可編輯的正常PPT課件該模塊用于對URL進行解析。該方法聲明如下:(一)urllib.parse.urlparseurllib.parse.urlparse(urlstring,scheme='',allow_fragments=True)本課件是可編輯的正常PPT課件(一)urllib.parse.urlparse#程序3.6fromurllib.parseimporturlparseres=urlparse('http://www.cwi.nl:80/%7Eguido/Python.html')print(res)print(res.scheme)print(res.port)本課件是可編輯的正常PPT課件urlunparse()的作用與urlparse相反,它是將url各個部分重組為一個完整的URL。(二)urllib.parse.urlunparse(parts)#程序3.7fromurllib.parseimporturlunparseres=urlunparse(['http','www.cwi.nl:80','/%7Eguido/Python.html','','',''])print(res)http://www.cwi.nl:80/%7Eguido/Python.html程序運行結(jié)果:本課件是可編輯的正常PPT課件使用Requests抓取數(shù)據(jù)知識點三本課件是可編輯的正常PPT課件除了可以使用urllib庫中的urlopen()方法請求頁面外Python還提供了Requests庫來實現(xiàn)同樣的功能。但是建議使用Requests庫,這是因為requests比urllib更為便捷,requests可以直接構(gòu)造get或post請求并發(fā)起請求,而urllib.request只能先構(gòu)造GET或POST請求,再發(fā)起請求。(一)Requests概述本課件是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 財務(wù)信息保密及第三方審計協(xié)議
- 智能辦公系統(tǒng)與辦公室裝修一體化項目合同
- 收養(yǎng)協(xié)議書范本范文
- 賣公司協(xié)議書范本
- 研發(fā)中心場地租賃保證金技術(shù)轉(zhuǎn)移轉(zhuǎn)化協(xié)議
- 創(chuàng)業(yè)公司財務(wù)總監(jiān)股權(quán)分配及風險控制聘用合同
- 河道渣土清運協(xié)議書范本
- 美國出口貨物貨運代理合同范本
- 機場擴建征地拆遷補償協(xié)議書
- 企業(yè)并購重組稅務(wù)處理與咨詢服務(wù)合同
- 電工廠搬遷方案(3篇)
- 2024年深圳市中考歷史試卷真題(含答案解析)
- 江蘇省建筑與裝飾工程計價定額(2014)電子表格版
- 脫碳塔CO2脫氣塔設(shè)計計算
- WYA-2WAJ阿貝折射儀使用說明書
- 體育課身體素質(zhì)練習教案
- kW殼管式干式蒸發(fā)器設(shè)計
- 新進員工三級教育卡(參考)范本
- 系列螺桿冷水機組操作培訓
- 五金用樣品承認書
- 四年級下冊英語外研一起點知識要點匯總
評論
0/150
提交評論