Python網路爬蟲基礎教程

《Python網路爬蟲基礎教程》是2022年人民郵電出版社出版的圖書。

基本介紹

  • 中文名:Python網路爬蟲基礎教程
  • 出版時間:2022年5月1日
  • 出版社:人民郵電出版社
  • ISBN:9787115589156
內容簡介,圖書目錄,

內容簡介

網路爬蟲是一種按照一定的規則,自動請求全球資訊網網站並採集網頁數據的程式或腳本。它可以代替人進行信息採集,能夠自動採集並高效利用網際網路中的數據,因此在市場的套用需求中占據重要位置。
本書以Windows為主要開發平台,系統、全面地講解Python網路爬蟲的相關知識。本書的主要內容包括認識網路爬蟲、網頁請求原理、抓取靜態網頁數據、解析網頁數據、抓取動態網頁數據、提升網路爬蟲速度、存儲數據、驗證碼識別、初識網路爬蟲框架Scrapy、Scrapy核心組件與CrawlSpider類、分散式網路爬蟲Scrapy-Redis。
本書可以作為高等院校計算機相關專業程式設計課程的教材、Python網路爬蟲的相關培訓教材,以及廣大編程開發者的網路爬蟲入門級教材。

圖書目錄

第 1章 認識網路爬蟲 001
1.1 什麼是網路爬蟲 001
1.2 網路爬蟲的套用場景 002
1.3 網路爬蟲合法性探究 003
1.3.1 Robots協定 003
1.3.2 防爬蟲應對策略 005
1.4 網路爬蟲的工作原理和流程 006
1.4.1 網路爬蟲的工作原理 006
1.4.2 網路爬蟲抓取網頁的流程 008
1.5 網路爬蟲實現技術探究 009
1.5.1 網路爬蟲的實現技術 009
1.5.2 Python實現網路爬蟲的流程 010
1.6 本章小結 011
1.7 習題 011
第 2章 網頁請求原理 013
2.1 瀏覽器載入網頁的過程 013
2.2 HTTP基礎 014
2.2.1 URL簡介 014
2.2.2 HTTP和HTTPS 015
2.2.3 HTTP請求格式 016
2.2.4 HTTP回響格式 017
2.3 網頁基礎 019
2.3.1 網頁開發技術 019
2.3.2 網頁的結構 021
2.3.3 網頁的分類 022
2.3.4 網頁數據的格式 024
2.4 HTTP抓包工具——Fiddler 026
2.4.1 Fiddler的工作原理 026
2.4.2 Fiddler的下載與安裝 027
2.4.3 Fiddler界面詳解 029
2.4.4 Fiddler捕獲HTTPS頁面的設定 032
2.4.5 Fiddler的基本使用 039
2.5 本章小結 041
2.6 習題 041
第3章 抓取靜態網頁數據 043
3.1 抓取靜態網頁的技術 043
3.2 傳送基本請求 044
3.2.1 傳送GET請求 044
3.2.2 傳送POST請求 046
3.2.3 處理回響 047
3.3 處理複雜請求 049
3.3.1 定製請求頭 049
3.3.2 驗證Cookie 051
3.3.3 保持會話 052
3.3.4 SSL證書驗證 053
3.4 設定代理伺服器 054
3.4.1 代理伺服器簡介 054
3.4.2 設定代理伺服器 055
3.4.3 檢測代理IP的有效性 056
3.5 處理異常 057
3.6 實踐項目:抓取黑馬程式設計師論壇的數據 059
【項目目標】 059
【項目分析】 060
【項目實現】 061
3.7 本章小結 063
3.8 習題 063
第4章 解析網頁數據 065
4.1 解析網頁數據的技術 065
4.2 正則表達式與re模組 066
4.2.1 正則表達式的語法 066
4.2.2 re模組的使用 068
4.3 XPath與lxml庫 069
4.3.1 XPath簡介 069
4.3.2 XPath語法 070
4.3.3 XPath開發工具 073
4.3.4 lxml庫簡介 075
4.4 Beautiful Soup庫 077
4.4.1 Beautiful Soup簡介 077
4.4.2 創建BeautifulSoup類的對象 078
4.4.3 通過查找方法選取節點 080
4.4.4 通過CSS選擇器選取節點 081
4.5 JSONPath與jsonpath模組 083
4.5.1 JSONPath語法 083
4.5.2 jsonpath模組的使用 085
4.6 實踐項目:採集黑馬程式設計師論壇的帖子 088
【項目目標】 088
【項目分析】 089
【項目實現】 090
4.7 本章小結 093
4.8 習題 093
第5章 抓取動態網頁數據 095
5.1 抓取動態網頁的技術 095
5.2 Selenium和WebDriver的安裝與配置 096
5.3 Selenium的基本使用 099
5.3.1 WebDriver類的常用屬性和方法 100
5.3.2 定位元素 102
5.3.3 滑鼠操作 105
5.3.4 下拉列表框操作 107
5.3.5 彈出框處理 108
5.3.6 頁面切換 110
5.3.7 頁面等待 111
5.4 實踐項目:採集集信達平台的簡訊服務日誌信息 114
【項目目標】 114
【項目分析】 116
【項目實現】 119
5.5 本章小結 122
5.6 習題 123
第6章 提升網路爬蟲速度 125
6.1 網路爬蟲速度提升方案 125
6.2 多執行緒爬蟲 126
6.2.1 多執行緒爬蟲流程分析 126
6.2.2 多執行緒爬蟲實現技術 127
6.2.3 多執行緒爬蟲基本示例 130
6.2.4 多執行緒爬蟲性能分析 133
6.3 協程爬蟲 134
6.3.1 協程爬蟲流程分析 134
6.3.2 協程爬蟲實現技術 135
6.3.3 協程爬蟲基本示例 137
6.3.4 協程爬蟲性能分析 138
6.4 實踐項目:採集黑馬頭條的評論列表 139
【項目目標】 139
【項目分析】 140
【項目實現】 141
6.5 本章小結 144
6.6 習題 144
第7章 存儲數據 146
7.1 數據存儲的方式 146
7.2 存儲至MongoDB資料庫 147
7.2.1 下載與安裝MongoDB 147
7.2.2 使用Python操作MongoDB 151
7.3 存儲至Redis資料庫 154
7.3.1 下載與安裝Redis 154
7.3.2 使用Python操作Redis 157
7.3.3 Redis桌面管理工具 159
7.4 實踐項目:採集小兔鮮兒網的商品信息 162
【項目目標】 162
【項目分析】 164
【項目實現】 167
7.5 本章小結 170
7.6 習題 170
第8章 驗證碼識別 172
8.1 驗證碼識別 172
8.1.1 字元驗證碼的識別 172
8.1.2 滑動拼圖驗證碼的識別 181
8.1.3 點選驗證碼的識別 181
8.2 實踐項目:登錄黑馬頭條後台管理系統 188
【項目目標】 188
【項目分析】 189
【項目實現】 191
8.3 本章小結 197
8.4 習題 197
第9章 初識網路爬蟲框架Scrapy 199
9.1 Scrapy框架簡介 199
9.2 Scrapy框架架構 200
9.3 Scrapy框架運作流程 201
9.4 Scrapy框架安裝 203
9.5 Scrapy框架基本操作 205
9.5.1 新建Scrapy項目 205
9.5.2 明確採集目標 206
9.5.3 製作爬蟲 207
9.5.4 永久存儲數據 212
9.6 實踐項目:採集黑馬程式設計師視頻庫的視頻信息 213
【項目目標】 213
【項目分析】 213
【項目實現】 214
9.7 本章小結 216
9.8 習題 216
第 10章 Scrapy核心組件與CrawlSpider類 219
10.1 Spiders組件 219
10.2 Item Pipeline組件 220
10.3 Downloader Middlewares組件 222
10.3.1 內置下載中間件 223
10.3.2 自定義下載中間件 223
10.3.3 激活下載中間件 225
10.4 Settings組件 225
10.5 CrawlSpider類 227
10.5.1 CrawlSpider類簡介 227
10.5.2 CrawlSpider類的工作原理 229
10.5.3 通過Rule類決定抓取規則 230
10.5.4 通過LinkExtractor類提取連結 231
10.6 實踐項目:採集暢購商城的華為手錶信息 232
【項目目標】 233
【項目分析】 233
【項目實現】 234
10.7 本章小結 236
10.8 習題 236
第 11章 分散式網路爬蟲Scrapy-Redis 238
11.1 分散式網路爬蟲簡介 238
11.2 Scrapy-Redis架構 240
11.3 Scrapy-Redis運作流程 242
11.4 Scrapy-Redis開發準備 242
11.4.1 安裝Scrapy-Redis 242
11.4.2 修改配置檔案 243
11.4.3 測試遠程連線 244
11.5 Scrapy-Redis的基本操作 246
11.5.1 新建Scrapy-Redis項目 246
11.5.2 明確採集目標 247
11.5.3 製作爬蟲 248
11.5.4 運行爬蟲 249
11.5.5 使用管道存儲數據 250
11.6 實踐項目:使用RedisCrawlSpider採集暢購商城的華為手錶信息 252
【項目目標】 252
【項目分析】 252
【項目實現】 252
11.7 本章小結 257
11.8 習題 257

相關詞條

熱門詞條

聯絡我們