《精通Python網(wǎng)絡(luò)爬蟲(chóng)》全稱(chēng)《精通Python網(wǎng)絡(luò)爬蟲(chóng):核心技術(shù)、框架與項(xiàng)目實(shí)戰(zhàn)》,是由韋瑋打造的一部從技術(shù)、工具、實(shí)戰(zhàn)3個(gè)維度講透Python網(wǎng)絡(luò)爬蟲(chóng)各項(xiàng)核心技術(shù)的作品。全書(shū)深度講解了網(wǎng)絡(luò)爬蟲(chóng)的抓取技術(shù)與反爬攻關(guān)技巧!
精通python網(wǎng)絡(luò)爬蟲(chóng)內(nèi)容簡(jiǎn)介
該書(shū)共20章,每一章都是關(guān)于Python網(wǎng)絡(luò)爬蟲(chóng)知識(shí)的介紹。
網(wǎng)絡(luò)爬蟲(chóng)是互聯(lián)網(wǎng)上進(jìn)行信息采集的通用手段,在互聯(lián)網(wǎng)的各個(gè)專(zhuān)業(yè)方向上都是不可或缺的底層技術(shù)支撐。該書(shū)從爬蟲(chóng)基礎(chǔ)開(kāi)始,全面介紹了Python網(wǎng)絡(luò)爬蟲(chóng)技術(shù),并且包含各種經(jīng)典的網(wǎng)絡(luò)爬蟲(chóng)項(xiàng)目案例。
全書(shū)共20章,劃分為四篇。理論基礎(chǔ)篇主要介紹Python網(wǎng)絡(luò)爬蟲(chóng)技術(shù)的理論基礎(chǔ),核心技術(shù)篇內(nèi)容涵蓋Urllib、正則表達(dá)式、Cookie處理、手寫(xiě)Python網(wǎng)絡(luò)爬蟲(chóng)、Fiddler抓包分析、瀏覽器偽裝、爬蟲(chóng)定向抓取技術(shù),框架實(shí)現(xiàn)篇主要包括Scrapy安裝與配置、Scrapy框架基礎(chǔ)、Scrapy核心架構(gòu)、Scrapy中文處理、CrawlSpider、Scrapy高級(jí)應(yīng)用等,項(xiàng)目實(shí)戰(zhàn)篇主要包含博客類(lèi)爬蟲(chóng)項(xiàng)目、圖片類(lèi)爬蟲(chóng)項(xiàng)目、模擬登錄爬蟲(chóng)項(xiàng)目等。
作者簡(jiǎn)介
韋瑋,現(xiàn)任重慶韜翔網(wǎng)絡(luò)科技有限公司創(chuàng)始人兼CEO,51CTO、CSDN等技術(shù)社區(qū)特邀專(zhuān)家與講師,輸出了大量的優(yōu)質(zhì)文章與課程。
目錄
前 言第一篇 理論基礎(chǔ)篇
第1章 什么是網(wǎng)絡(luò)爬蟲(chóng) 3
1.1 初識(shí)網(wǎng)絡(luò)爬蟲(chóng) 3
1.2 為什么要學(xué)網(wǎng)絡(luò)爬蟲(chóng) 4
1.3 網(wǎng)絡(luò)爬蟲(chóng)的組成 5
1.4 網(wǎng)絡(luò)爬蟲(chóng)的類(lèi)型 6
1.5 爬蟲(chóng)擴(kuò)展——聚焦爬蟲(chóng) 7
1.6 小結(jié) 8
第2章 網(wǎng)絡(luò)爬蟲(chóng)技能總覽 9
2.1 網(wǎng)絡(luò)爬蟲(chóng)技能總覽圖 9
2.2 搜索引擎核心 10
2.3 用戶(hù)爬蟲(chóng)的那些事兒 11
2.4 小結(jié) 12
第二篇 核心技術(shù)篇
第3章 網(wǎng)絡(luò)爬蟲(chóng)實(shí)現(xiàn)原理與實(shí)現(xiàn)技術(shù) 15
3.1 網(wǎng)絡(luò)爬蟲(chóng)實(shí)現(xiàn)原理詳解 15
3.2 爬行策略 17
3.3 網(wǎng)頁(yè)更新策略 18
3.4 網(wǎng)頁(yè)分析算法 20
3.5 身份識(shí)別 21
3.6 網(wǎng)絡(luò)爬蟲(chóng)實(shí)現(xiàn)技術(shù) 21
3.7 實(shí)例——metaseeker 22
3.8 小結(jié) 27
第4章 Urllib庫(kù)與URLError異常處理 29
4.1 什么是Urllib庫(kù) 29
4.2 快速使用Urllib爬取網(wǎng)頁(yè) 30
4.3 瀏覽器的模擬——Headers屬性 34
4.4 超時(shí)設(shè)置 37
4.5 HTTP協(xié)議請(qǐng)求實(shí)戰(zhàn) 39
4.6 代理服務(wù)器的設(shè)置 44
4.7 DebugLog實(shí)戰(zhàn) 45
4.8 異常處理神器——URLError實(shí)戰(zhàn) 46
4.9 小結(jié) 51
第5章 正則表達(dá)式與Cookie的使用 52
5.1 什么是正則表達(dá)式 52
5.2 正則表達(dá)式基礎(chǔ)知識(shí) 52
5.3 正則表達(dá)式常見(jiàn)函數(shù) 61
5.4 常見(jiàn)實(shí)例解析 64
5.5 什么是Cookie 66
5.6 Cookiejar實(shí)戰(zhàn)精析 66
5.7 小結(jié) 71
第6章 手寫(xiě)Python爬蟲(chóng) 73
6.1 圖片爬蟲(chóng)實(shí)戰(zhàn) 73
6.2 鏈接爬蟲(chóng)實(shí)戰(zhàn) 78
6.3 糗事百科爬蟲(chóng)實(shí)戰(zhàn) 80
6.4 微信爬蟲(chóng)實(shí)戰(zhàn) 82
6.5 什么是多線(xiàn)程爬蟲(chóng) 89
6.6 多線(xiàn)程爬蟲(chóng)實(shí)戰(zhàn) 90
6.7 小結(jié) 98
第7章 學(xué)會(huì)使用Fiddler 99
7.1 什么是Fiddler 99
7.2 爬蟲(chóng)與Fiddler的關(guān)系 100
7.3 Fiddler的基本原理與基本界面 100
7.4 Fiddler捕獲會(huì)話(huà)功能 102
7.5 使用QuickExec命令行 104
7.6 Fiddler斷點(diǎn)功能 106
7.7 Fiddler會(huì)話(huà)查找功能 111
7.8 Fiddler的其他功能 111
7.9 小結(jié) 113
第8章 爬蟲(chóng)的瀏覽器偽裝技術(shù) 114
8.1 什么是瀏覽器偽裝技術(shù) 114
8.2 瀏覽器偽裝技術(shù)準(zhǔn)備工作 115
8.3 爬蟲(chóng)的瀏覽器偽裝技術(shù)實(shí)戰(zhàn) 117
8.4 小結(jié) 121
第9章 爬蟲(chóng)的定向爬取技術(shù) 122
9.1 什么是爬蟲(chóng)的定向爬取技術(shù) 122
9.2 定向爬取的相關(guān)步驟與策略 123
9.3 定向爬取實(shí)戰(zhàn) 124
9.4 小結(jié) 130
第三篇 框架實(shí)現(xiàn)篇
第10章 了解Python爬蟲(chóng)框架 133
10.1 什么是Python爬蟲(chóng)框架 133
10.2 常見(jiàn)的Python爬蟲(chóng)框架 133
10.3 認(rèn)識(shí)Scrapy框架 134
10.4 認(rèn)識(shí)Crawley框架 135
10.5 認(rèn)識(shí)Portia框架 136
10.6 認(rèn)識(shí)newspaper框架 138
10.7 認(rèn)識(shí)Python-goose框架 139
10.8 小結(jié) 140
第11章 爬蟲(chóng)利器——Scrapy安裝與配置 141
11.1 在Windows7下安裝及配置Scrapy實(shí)戰(zhàn)詳解 141
11.2 在Linux(Centos)下安裝及配置Scrapy實(shí)戰(zhàn)詳解 147
11.3 在MAC下安裝及配置Scrapy實(shí)戰(zhàn)詳解 158
11.4 小結(jié) 161
第12章 開(kāi)啟Scrapy爬蟲(chóng)項(xiàng)目之旅 162
12.1 認(rèn)識(shí)Scrapy項(xiàng)目的目錄結(jié)構(gòu) 162
12.2 用Scrapy進(jìn)行爬蟲(chóng)項(xiàng)目管理 163
12.3 常用工具命令 166
12.4 實(shí)戰(zhàn):Items的編寫(xiě) 181
12.5 實(shí)戰(zhàn):Spider的編寫(xiě) 183
12.6 XPath基礎(chǔ) 187
12.7 Spider類(lèi)參數(shù)傳遞 188
12.8 用XMLFeedSpider來(lái)分析XML源 191
12.9 學(xué)會(huì)使用CSVFeedSpider 197
12.10 Scrapy爬蟲(chóng)多開(kāi)技能 200
12.11 避免被禁止 206
12.12 小結(jié) 212
第13章 Scrapy核心架構(gòu) 214
13.1 初識(shí)Scrapy架構(gòu) 214
13.2 常用的Scrapy組件詳解 215
13.3 Scrapy工作流 217
13.4 小結(jié) 219
第14章 Scrapy中文輸出與存儲(chǔ) 220
14.1 Scrapy的中文輸出 220
14.2 Scrapy的中文存儲(chǔ) 223
14.3 輸出中文到JSON文件 225
14.4 小結(jié) 230
第15章 編寫(xiě)自動(dòng)爬取網(wǎng)頁(yè)的爬蟲(chóng) 231
15.1 實(shí)戰(zhàn):items的編寫(xiě) 231
15.2 實(shí)戰(zhàn):pipelines的編寫(xiě) 233
15.3 實(shí)戰(zhàn):settings的編寫(xiě) 234
15.4 自動(dòng)爬蟲(chóng)編寫(xiě)實(shí)戰(zhàn) 234
15.5 調(diào)試與運(yùn)行 239
15.6 小結(jié) 242
第16章 CrawlSpider 243
16.1 初識(shí)CrawlSpider 243
16.2 鏈接提取器 244
16.3 實(shí)戰(zhàn):CrawlSpider實(shí)例 245
16.4 小結(jié) 249
第17章 Scrapy高級(jí)應(yīng)用 250
17.1 如何在Python3中操作數(shù)據(jù)庫(kù) 250
17.2 爬取內(nèi)容寫(xiě)進(jìn)MySQL 254
17.3 小結(jié) 259
第四篇 項(xiàng)目實(shí)戰(zhàn)篇
第18章 博客類(lèi)爬蟲(chóng)項(xiàng)目 263
18.1 博客類(lèi)爬蟲(chóng)項(xiàng)目功能分析 263
18.2 博客類(lèi)爬蟲(chóng)項(xiàng)目實(shí)現(xiàn)思路 264
18.3 博客類(lèi)爬蟲(chóng)項(xiàng)目編寫(xiě)實(shí)戰(zhàn) 264
18.4 調(diào)試與運(yùn)行 274
18.5 小結(jié) 275
第19章 圖片類(lèi)爬蟲(chóng)項(xiàng)目 276
19.1 圖片類(lèi)爬蟲(chóng)項(xiàng)目功能分析 276
19.2 圖片類(lèi)爬蟲(chóng)項(xiàng)目實(shí)現(xiàn)思路 277
19.3 圖片類(lèi)爬蟲(chóng)項(xiàng)目編寫(xiě)實(shí)戰(zhàn) 277
19.4 調(diào)試與運(yùn)行 281
19.5 小結(jié) 282
第20章 模擬登錄爬蟲(chóng)項(xiàng)目 283
20.1 模擬登錄爬蟲(chóng)項(xiàng)目功能分析 283
20.2 模擬登錄爬蟲(chóng)項(xiàng)目實(shí)現(xiàn)思路 283
20.3 模擬登錄爬蟲(chóng)項(xiàng)目編寫(xiě)實(shí)戰(zhàn) 284
20.4 調(diào)試與運(yùn)行 292
20.5 小結(jié) 294