數據採集技術

廖大強

  • 出版商: 清華大學
  • 出版日期: 2022-04-01
  • 定價: $299
  • 售價: 8.5$254
  • 語言: 簡體中文
  • ISBN: 7302600589
  • ISBN-13: 9787302600589
  • 下單後立即進貨 (約4週~6週)

  • 數據採集技術-preview-1
  • 數據採集技術-preview-2
  • 數據採集技術-preview-3
數據採集技術-preview-1

商品描述

本書介紹基於Python語言的網絡數據採集技術的相關知識,並為採集網絡中的各種數據類型提供全面指導。第1章重點介紹Scrapy框架及配置方法;第2~6章重點介紹網絡數據採集的基本原理,包括如何利用Python從網絡服務器請求信息,如何對服務器的響應進行基本處理,以及如何通過自動化的手段與網站進行交互;第7、8章介紹登錄表單與驗證碼的數據採集和自動化處理,以及並行多線程網絡數據的採集方法。本書還提供了多個實驗,以幫助讀者鞏固所學內容。 本書適合作為普通高等院校電腦程序設計、大數據課程的教材,也可作為從事Web數據採集的軟件開發人員和研究人員的參考書。

目錄大綱

目錄

第1章緒論1

1.1數據採集概述1

1.1.1什麽是數據採集1

1.1.2數據採集的典型

應用場景2

1.1.3數據採集技術框架3

1.1.4數據採集面臨的

挑戰6

1.2網絡爬蟲概述6

1.2.1什麽是網絡爬蟲6

1.2.2網絡爬蟲的應用6

1.2.3網絡爬蟲的結構7

1.2.4網絡爬蟲的組成7

1.2.5網絡爬蟲的類型8

1.2.6實現網絡爬蟲的

技術10

1.3Scrapy爬蟲10

1.3.1Scrapy框架10

1.3.2Scrapy的常用

組件11

1.3.3Scrapy工作流12

1.3.4其他Python框架12

1.3.5Scrapy的安裝與

配置13

1.3.6Windows 7下的

安裝配置13

1.3.7Linux(Cent OS)

下的安裝配置18

本章小結22

習題22第2章採集網頁數據23

2.1採集網頁分析23

2.1.1HTTP概述23

2.1.2HTTP消息23

2.2用Python實現HTTP

請求25

2.2.1urllib3/urllib的

實現25

2.2.2httplib/urllib的

實現27

2.2.3第三方庫Requests

方式27

2.3靜態網頁採集29

2.3.1尋找數據特徵30

2.3.2獲取響應內容31

2.3.3定製Requests32

2.3.4代碼解析35

2.4動態網頁採集37

2.4.1找到JavaScript

請求的數據接口38

2.4.2請求和解析數據

接口數據41

2.5實驗1: HTML網頁採集42

2.5.1新建項目42

2.5.2編寫代碼43

2.5.3運行程序44

本章小結45

習題45第3章解析採集到的網頁47

3.1使用正則表達式解析47

3.1.1基本語法與使用47

3.1.2Python與正則

表達式48

3.2使用Beautiful Soup解析52

3.2.1Python網頁解析器52

3.2.2Beautiful Soup第

三方庫53

3.3使用lxml解析72

3.3.1安裝lxml72

3.3.2XPath語言72

3.3.3使用lxml74

3.4解析方法的優缺點對比76

3.5實驗2: 使用正則表達式

解析採集的網頁77

3.5.1目標網站分析77

3.5.2編寫代碼78

3.5.3運行結果79

3.6實驗3: 使用Beautiful Soup

解析採集的網頁80

3.6.1目標網站分析80

3.6.2編寫代碼81

3.6.3運行結果83

本章小結84

習題85第4章存儲採集到的數據86

4.1HTML正文抽取86

4.1.1存儲為JSON格式86

4.1.2存儲為CSV格式90

4.2MySQL數據庫91

4.2.1安裝MySQL92

4.2.2與Python整合94

4.2.3在網絡數據採集中

使用MySQL97

4.3更適合網絡數據採集的

MongoDB103

4.3.1安裝MongoDB103

4.3.2MongoDB基礎105

4.3.3Python操作

MongoDB107

4.4實驗4: 使用MongoDB

存儲網絡採集的數據108

4.4.1網站分析109

4.4.2獲取首頁數據110

4.4.3解析數據111

4.4.4存儲到MongoDB112

4.5實驗5: 採集數據並

存儲到MySQL114

4.5.1準備工作114

4.5.2編寫代碼115

4.5.3運行結果117

本章小結118

習題118第5章基礎網絡數據採集119

5.1基礎網絡數據採集的

架構及運行流程119

5.2URL管理器121

5.2.1URL管理器的

主要功能121

5.2.2URL管理器的

實現方式121

5.3HTML下載器123

5.3.1下載方法123

5.3.2註意事項124

5.4HTML解析器124

5.5數據存儲器126

5.6數據調度器127

5.7實驗6: Scrapy基礎網絡

數據採集128

5.7.1創建採集模塊128

5.7.2啟動程序129

5.7.3控制運行狀態131

本章小結136

習題136第6章分佈式網絡數據採集137

6.1分佈式運行結構137

6.1.1分佈式網絡數據

採集分析137

6.1.2簡單分佈式架構138

6.1.3工作機制138

6.2控制節點140

6.2.1URL管理器140

6.2.2數據存儲器142

6.2.3控制調度器145

6.3採集節點148

6.3.1HTML下載器149

6.3.2HTML解析器149

6.3.3網絡數據採集

調度器150

6.4反爬技術151

6.4.1反爬問題152

6.4.2反爬機制152

6.4.3瀏覽器偽裝技術159

6.5實驗7: Scrapy分佈式

網絡數據採集161

6.5.1創建起點數據

採集項目161

6.5.2定義Item163

6.5.3編寫網絡數據

採集模塊164

6.5.4Pipeline166

6.5.5應對反爬機制168

6.5.6去重優化171

本章小結173

習題173第7章登錄表單與驗證碼的

數據採集174

7.1網頁登錄表單174

7.1.1登錄表單處理175

7.1.2加密數據分析180

7.1.3Cookie的使用184

7.2驗證碼的處理185

7.2.1什麽是驗證碼185

7.2.2人工處理驗證碼186

7.2.3OCR處理驗證碼189

7.3實驗8: Scrapy模擬採集

豆瓣網數據191

7.3.1分析豆瓣登錄191

7.3.2編寫代碼192

7.3.3實驗調試與運行194

7.3.4問題處理195

本章小結196

習題196第8章並行多線程網絡數據

採集198

8.1多線程網絡數據採集198

8.1.11000個網站網頁198

8.1.2串行採集199

8.1.3多線程網絡數據

採集的工作原理199

8.2多進程網絡數據採集203

8.2.1線程和進程如何

工作203

8.2.2實現多進程採集204

8.3實驗9: Scrapy天氣數據

採集208

8.3.1創建項目208

8.3.2定義Item209

8.3.3編寫採集天氣數據

的程序209

8.3.4運行程序驗證

數據211

8.3.5保存採集到的

數據211

8.3.6運行程序213

本章小結215

習題215