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

池瑞楠,張良均

  • 出版商: 人民郵電
  • 出版日期: 2023-10-01
  • 售價: $299
  • 貴賓價: 9.5$284
  • 語言: 簡體中文
  • 頁數: 208
  • ISBN: 7115625050
  • ISBN-13: 9787115625052
  • 相關分類: Web-crawler 網路爬蟲
  • 立即出貨 (庫存=1)

  • 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