數據採集技術
廖大強
相關主題
商品描述
目錄大綱
目錄
第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