作 者:崔慶纔 著
定 價:139.8
出 版 社:人民郵電出版社
出版日期:2021年11月01日
頁 數:928
裝 幀:平裝
ISBN:9787115577092
1.Python 之父 Guido van Rossum 推薦的爬蟲入門書,第 1 版銷量近 100000 冊;2.微軟中國大數據工程師、博客文章過百萬的博主靜覓力作;3.新增異步爬蟲、JavaScript 逆向、App 逆向、智能網頁解析、深度學習識別驗證碼、Kubernetes 運維及部署等知識點;4.相比於第一版,為每個知識點的實戰項目配備了針對性的練習平臺,避免了案例過期的問題。
●第1章爬蟲基礎1
1.1HTTP基本原理1
1.2Web網頁基礎12
1.3爬蟲的基本原理19
1.4Session和Cookie21
1.5代理的基本原理24
1.6多線程和多進程的基本原理26
第2章基本庫的使用29
2.1urllib的使用29
2.2requests的使用47
2.3正則表達式63
2.4httpx的使用73
2.5基礎爬蟲案例實戰78
第3章網頁數據的解析提取90
3.1XPath的使用90
3.2Beautiful Soup的使用99
3.3pyquery的使用113
3.4parsel的使用124
第4章數據的存儲128
4.1TXT文本文件存儲128
4.2JSON文件存儲130
4.3CSV文件存儲134
4.4MySQL存儲138
4.5MongoDB文檔存儲144
4.6Redis緩存存儲151
4.7Elasticsearch搜索引擎存儲159
4.8RabbitMQ的使用166
第5章Ajax數據爬取174
5.1什麼是Ajax174
5.2Ajax分析方法176
5.3Ajax分析與爬取實戰179
第6章異步爬蟲191
6.1協程的基本原理191
6.2aiohttp的使用201
6.3aiohttp異步爬取實戰207
第7章JavaScript動態渲染頁面爬取212
7.1Selenium的使用212
7.2Splash的使用226
7.3Pyppeteer的使用242
7.4Playwright的使用257
7.5Selenium爬取實戰269
7.6Pyppeteer爬取實戰276
7.7CSS位置偏移反爬案例分析與爬取實戰282
7.8字體反爬案例分析與爬取實戰287
第8章驗證碼的識別293
8.1使用OCR技術識別圖形驗證碼293
8.2使用OpenCV識別滑動驗證碼的缺口298
8.3使用深度學習識別圖形驗證碼304
8.4使用深度學習識別滑動驗證碼的缺口309
8.5使用打碼平臺識別驗證碼316
8.6手機驗證碼的自動化處理324
第9章代理的使用331
9.1代理的設置331
9.2代理池的維護340
9.3付費代理的使用351
9.4ADSL撥號代理的搭建方法357
9.5代理反爬案例爬取實戰365
第10章模擬登錄373
10.1模擬登錄的基本原理373
10.2基於Session和Cookie的模擬登錄爬取實戰376
10.3基於JWT的模擬登錄爬取實戰381
10.4大規模賬號池的搭建385
第11章JavaScript逆向爬蟲397
11.1網站加密和混淆技術簡介397
11.2瀏覽器調試常用技巧413
11.3JavaScript Hook的使用430
11.4無限debugger的原理與繞過440
11.5使用Python模擬執行JavaScript445
11.6使用Node.js模擬執行JavaScript451
11.7瀏覽器環境下JavaScript的模擬執行454
11.8AST技術簡介460
11.9使用AST技術還原混淆代碼472
11.10特殊混淆案例的還原480
11.11WebAssembly案例分析和爬取實戰490
11.12JavaScript逆向技巧總結498
11.13JavaScript逆向爬取實戰505
第12章App數據的爬取530
12.1Charles抓包工具的使用530
12.2mitmproxy抓包工具的使用538
12.3mitmdump實時抓包處理544
12.4Appium的使用551
12.5基於Appium的App爬取實戰562
12.6Airtest的使用568
12.7基於Airtest的App爬取實戰585
12.8手機群控爬取實戰591
12.9雲手機的使用594
第13章Android逆向603
13.1jadx的使用603
13.2JEB的使用615
13.3Xposed框架的使用624
13.4基於Xposed的爬取實戰案例635
13.5Frida的使用643
13.6SSL Pining問題的解決方案650
13.7Android脫殼技術簡介與實戰657
13.8利用IDA Pro靜態分析和動態調試so文件664
13.9基於Frida-RPC模擬執行so文件680
13.10基於AndServer-RPC模擬執行so文件685
13.11基於unidbg模擬執行so文件692
第14章頁面智能解析700
14.1頁面智能解析簡介700
14.2詳情頁智能解析算法簡介707
14.3詳情頁智能解析算法的實現714
14.4列表頁智能解析算法簡介722
14.5列表頁智能解析算法的實現727
14.6如何智能分辨列表頁和詳情頁735
第15章Scrapy框架的使用739
15.1Scrapy框架介紹739
15.2Scrapy入門743
15.3Selector的使用754
15.4Spider的使用759
15.5Downloader Middleware的使用766
15.6Spider Middleware的使用775
15.7Item Pipeline的使用781
15.8Extension的使用792
15.9Scrapy對接Selenium795
15.10Scrapy對接Splash801
15.11Scrapy對接Pyppeteer806
15.12Scrapy規則化爬蟲813
15.13Scrapy實戰827
第16章分布式爬蟲840
16.1分布式爬蟲理念840
16.2Scrapy-Redis原理和源碼解析842
16.3基於Scrapy-Redis的分布式爬蟲實現847
16.4基於Bloom Filter進行大規模去重851
16.5基於RabbitMQ的分布式爬蟲859
第17章爬蟲的管理和部署862
17.1Scrapyd和ScrapydAPI的使用862
17.2Scrapyd-Client的使用867
17.3Gerapy爬蟲管理框架的使用869
17.4將Scrapy項目打包成Docker鏡像873
17.5Docker Compose的使用878
17.6Kubernetes的使用880
17.7用Kubernetes部署和管理Scrapy爬蟲888
17.8Scrapy分布式爬蟲的數據統計方案899
17.9基於Prometheus和Grafana的分布式爬蟲監控方案904
附錄爬蟲與法律917
本書介紹了如何利用Python3開發網絡爬蟲。本書為第2版,相比於第1版,為每個知識點的實戰項目配備了針對性的練習平臺,避免了案例過期的問題。另外,主要增加了異步爬蟲、JavaScript逆向、App逆向、頁面智能解析、深度學習識別驗證碼、Kubernetes運維及部署等知識點,同時也對各個爬蟲知識點涉及的請求、存儲、解析、測試等工具進行了豐富和更新。本書適合Python程序員閱讀。
崔慶纔 著
崔慶纔微軟(中國)軟件工程師,北京航空航天大學碩士,主要研究網絡爬蟲、Web 開發、機器學習等方向。