Python 網絡爬蟲技術, 2/e (微課版)

池瑞楠,張良均

  • 出版商: 人民郵電
  • 出版日期: 2023-10-01
  • 定價: $299
  • 售價: 8.5$254
  • 語言: 簡體中文
  • 頁數: 208
  • ISBN: 7115625050
  • ISBN-13: 9787115625052
  • 相關分類: Web-crawler 網路爬蟲
  • 下單後立即進貨 (約4週~6週)

  • Python 網絡爬蟲技術, 2/e (微課版)-preview-1
  • Python 網絡爬蟲技術, 2/e (微課版)-preview-2
Python 網絡爬蟲技術, 2/e (微課版)-preview-1

買這商品的人也買了...

商品描述

本書以任務為導向,較為系統地介紹了不同場景下Python爬取網絡數據的方法。全書共分為7個項目,第1個項目介紹了爬蟲與反爬蟲的基本概念,以及Python爬蟲環境的配置,第2個項目介紹了爬取過程中涉及的網頁前端基礎知識,第3個項目介紹了在靜態網頁中爬取數據的過程,第4個項目介紹了在動態網頁中爬取數據的過程,第5個項目介紹了對登錄後才能訪問的網頁進行模擬登錄的方法,第6個項目介紹了爬取PC客戶端、App的數據的方法,第7個項目介紹了使用Scrapy爬蟲框架爬取數據的過程。本書所有章節都包含了實訓與課後習題,通過練習和操作實戰,可幫助讀者鞏固所學的內容。 本書可以作為大數據技術愛好者的自學用書,也可作為高校大數據技術類專業的教材。

作者簡介

張良均 高級信息系統項目管理師,泰迪杯全國大學生數據挖掘競賽(www.tipdm.org)的發起人。華南師範大學、廣東工業大學兼職教授,廣東省工業與應用數學學會理事。兼有大型高科技企業和高校的工作經歷,主要從事大數據挖掘及其應用的策劃、研發及咨詢培訓。全國電腦技術與軟件專業技術資格(水平)考試繼續教育和CDA數據分析師培訓講師。發表數據挖掘相關論文數二十餘篇,已取得國家發明專利12項,主編圖書《神經網絡實用教程》、《數據挖掘:實用案例分析》、《MATLAB數據分析與挖掘實戰》等9本熱銷圖書,主持並完成科技項目9項。獲得SAS、SPSS數據挖掘認證及Hadoop開發工程師證書,具有電力、電信、銀行、製造企業、電子商務和電子政務的項目經驗和行業背景。

目錄大綱

目錄

項目1 瞭解爬蟲與Python爬蟲環境 1

【項目背景】 1

【學習目標】 1

【思維導圖】 2

任務1.1 認識爬蟲 2

1.1.1 爬蟲的概念 3

1.1.2 爬蟲的原理 3

1.1.3 爬蟲的合法性與robots協議 5

任務1.2 認識反爬蟲 7

1.2.1 網站反爬蟲的目的與手段 8

1.2.2 爬取策略制定 9

任務1.3 配置Python爬蟲環境 10

1.3.1 配置PyCharm 11

1.3.2 Python爬蟲相關庫介紹與配置 20

1.3.3 配置MySQL數據庫 21

1.3.4 配置MongoDB數據庫 34

小結 40

實訓 Python爬蟲環境配置 41

思考題 42

課後習題 42

項目2 爬蟲基礎知識準備 44

【項目背景】 44

【學習目標】 44

【思維導圖】 45

任務2.1 認識網頁基礎 46

2.1.1 瞭解網頁開發技術 47

2.1.2 瞭解網頁的結構 49

2.1.3 瞭解網頁的分類 56

2.1.4 瞭解網頁的數據結構 59

任務2.2 認識HTTP 61

2.2.1 熟悉HTTP請求方法與過程 62

2.2.2 熟悉常見HTTP狀態碼 64

2.2.3 熟悉HTTP頭部信息 65

2.2.4 熟悉Cookie 71

小結 73

實訓 74

實訓1 創建一個簡單的網頁文件 74

實訓2 訪問網站並查看請求和響應信息 74

思考題 75

課後習題 75

項目3 簡單靜態網頁爬取—獲取某企業官網基本信息 77

【項目背景】 77

【學習目標】 77

【思維導圖】 78

任務3.1 實現HTTP請求 79

3.1.1 使用Chrome開發者工具查看網頁 80

3.1.2 使用urllib 3庫實現 86

3.1.3 使用Requests庫實現 90

任務3.2 解析網頁 95

3.2.1 使用Xpath解析網頁 95

3.2.2 使用Beautiful Soup庫解析網頁 101

3.2.3 使用正則表達式解析網頁 109

任務3.3 數據存儲 113

3.3.1 將數據存儲為JSON文件 113

3.3.2 將數據存儲到MySQL數據庫 115

小結 117

實訓 118

實訓1 生成GET請求並獲取指定網頁內容 118

實訓2 搜索目標節點並提取文本內容 119

實訓3 在數據庫中建立新表並導入數據 119

思考題 120

課後習題 120

項目4 爬取動態網頁——獲取圖書基本信息 123

【項目背景】 123

【學習目標】 123

【思維導圖】 124

任務4.1 逆向分析爬取動態網頁 124

4.1.1 判別網頁類型 125

4.1.2 獲取動態網頁信息 126

任務4.2 使用Selenium庫爬取動態網頁 129

4.2.1 安裝Selenium庫及下載瀏覽器驅動 130

4.2.2 打開瀏覽對象並訪問頁面 131

4.2.3 元素選取 132

4.2.4 元素交互 136

4.2.5 頁面操作 138

4.2.6 頁面等待 140

任務4.3 存儲數據至MongoDB數據庫 143

4.3.1 MongoDB數據庫和MySQL數據庫的區別 143

4.3.2 將數據存儲到MongoDB數據庫 144

小結 148

實訓 149

實訓1 生成GET請求並獲取指定網頁內容 149

實訓2 搜索目標節點並提取文本內容 149

思考題 150

課後習題 150

項目5 模擬登錄—登錄某企業官網 153

【項目背景】 153

【學習目標】 153

【思維導圖】 154

任務5.1 使用表單登錄方法實現模擬登錄 155

5.1.1 查找提交入口 155

5.1.2 查找並獲取需要提交的表單數據 158

5.1.3 使用POST請求方法登錄 162

任務5.2 使用Cookie登錄方法實現模擬登錄 165

5.2.1 使用瀏覽器Cookie登錄 165

5.2.2 基於表單登錄的Cookie登錄 168

小結 170

實訓 171

實訓1 使用表單登錄方法模擬登錄古詩文網 171

實訓2 使用瀏覽器Cookie模擬登錄古詩文網 171

實訓3 基於表單登錄後的Cookie模擬登錄古詩文網 172

思考題 173

課後習題 173

項目6 終端協議分析——獲取某音樂PC客戶端和APP數據 175

【項目背景】 175

【學習目標】 176

【思維導圖】 176

任務6.1 分析PC客戶端抓包 177

6.1.1 瞭解HTTP Analyzer工具 177

6.1.2 爬取酷我音樂PC客戶端數據 180

任務6.2 分析App抓包 182

6.2.1 瞭解Fiddler工具 182

6.2.2 分析酷我音樂App 186

小結 189

實訓 189

實訓1 抓取酷我音樂PC客戶端的推薦歌曲信息 189

實訓2 監控樸樸超市商品實時價格 191

思考題 192

課後習題 193

項目7 使用Scrapy爬蟲——爬取某企業官網新聞動態 194

【項目背景】 194

【學習目標】 194

【思維導圖】 195

任務7.1 認識Scrapy 196

7.1.1 瞭解Scrapy爬蟲框架 196

7.1.2 熟悉Scrapy常用命令 198

任務7.2 通過Scrapy爬取文本信息 199

7.2.1 創建Scrapy爬蟲項目 200

7.2.2 修改items/pipelines腳本 201

7.2.3 編寫spider腳本 204

7.2.4 修改settings腳本 209

任務7.3 定製中間件 212

7.3.1 定製下載器中間件 212

7.3.2 定製Spider中間件 216

小結 217

實訓 218

實訓1 爬取“http://www.tipdm.org”的所有新聞動態 218

實訓2 定製BdRaceNews爬蟲項目的中間件 219

實訓3 爬取貓眼電影“https://maoyan.com/board/4”的影片信息 220

實訓4 配置Maoyan100爬蟲項目的設置文件 220

思考題 221

課後習題 222