零基礎學 Python 網絡爬蟲案例實戰全流程詳解.高級進階篇

零基礎學 Python 網絡爬蟲案例實戰全流程詳解.高級進階篇

作者: 王宇韜 吳子湛 史靖涵
出版社: 機械工業
出版在: 2021-06-01
ISBN-13: 9787111684749
ISBN-10: 7111684745
裝訂格式: 平裝
總頁數: 272 頁





內容描述


網絡爬蟲是當今獲取數據不可或缺的重要手段。本書講解了Python爬蟲的進階理論與技術,幫助讀者提升實戰水平。
全書共7章。第1~3章為常見反爬機制的應對手段,主要內容包括Cookie模擬登錄、多種類型的驗證碼
識別、Ajax動態請求破解。第4章為手機App內容爬取。第5章和第6章為Scrapy爬蟲框架應用。第7章為爬蟲雲服務器部署。
本書適合有一定Python網絡爬蟲編程基礎的學生或相關從業人員,以及想要在Python網絡爬蟲開發、不同類型的反爬機制應對、爬蟲框架開發、爬蟲雲端部署等方面進階提高的讀者。


目錄大綱


前言
本書學習資源
第1章 Cookie模擬登錄
1.1 Cookie模擬登錄的原理 11
1.1.1 客戶端與服務端 11
1.1.2 HTTP的無狀態性 12
1.1.3 Cookie的含義與作用 13
1.1.4 Session的含義與作用 16
1.1.5 Cookie與Session的交互 17
1.2 案例實戰1:模擬登錄淘寶並爬取數據 20
1.2.1 獲取Cookie模擬登錄淘寶 20
1.2.2 爬取淘寶商品數據 25
1.3 案例實戰2:模擬登錄新浪微博並爬取數據 29
1.3.1 獲取Cookie模擬登錄新浪微博 30
1.3.2 爬取新浪微博熱搜榜信息 34
★ 課後習題 38
第2章 驗證碼反爬的應對
2.1 圖像驗證碼 39
2.1.1 超級鷹平臺註冊 40
2.1.2 超級鷹Python接口的使用 41
2.1.3 案例實戰:英文驗證碼和中文驗證碼識別 46
2.2 計算題驗證碼 51
2.3 滑塊驗證碼 54
2.4 滑動拼圖驗證碼 57
2.4.1 初級版滑動拼圖驗證碼 59
2.4.2 高級版滑動拼圖驗證碼 63
2.5 點選驗證碼 68
2.5.1 本地網頁識別 69
2.5.2 bilibili點選驗證碼識別初探 75
2.5.3 bilibili點選驗證碼識別升級:無限嘗試版 80
★ 課後習題 85
第3章 Ajax動態請求破解
3.1 Ajax簡介 86
3.1.1 不同的網頁翻頁方式的對比 86
3.1.2 Ajax的基本概念與工作原理 88
3.2 案例實戰1:爬取開源中國博客頻道 89
3.2.1 分析Ajax請求 89
3.2.2 爬取單頁博客 92
3.2.3 爬取多頁博客 96
3.3 案例實戰2:爬取新浪微博 98
3.3.1 模擬登錄新浪微博 100
3.3.2 分析單個微博頁面 101
3.3.3 破解Ajax請求爬取多頁 103
★ 課後習題 108
第4章 手機App內容爬取
4.1 相關軟件安裝 109
4.1.1 安裝夜神模擬器 110
4.1.2 安裝Node.js 111
4.1.3 安裝JDK 113
4.1.4 安裝Android Studio 117
4.1.5 安裝Appium 118
4.1.6 安裝Appium-Python-Client庫 118
4.2 手機模擬操作初步嘗試 119
4.2.1 用Android Studio連接夜神模擬器 119
4.2.2 用Python連接微信App 121
4.3 Appium基本操作與進階操作 123
4.3.1 Appium基本操作 123
4.3.2 Appium進階操作 126
4.4 案例實戰:爬取微信朋友圈內容 132
4.4.1 獲取微信朋友圈頁面源代碼 133
4.4.2 提取微信朋友圈內容 135
4.5 多開模擬器打開多個微信 138
4.5.1 多開模擬器 138
4.5.2 用Appium連接多個模擬器 139
★ 課後習題 143
第5章 Scrapy爬蟲框架
5.1 Scrapy框架基礎 144
5.1.1 Scrapy的安裝方法 144
5.1.2 Scrapy的整體架構 146
5.1.3 Scrapy的常用指令 148
5.2 案例實戰1:百度新聞爬取 156
5.2.1 Robots協議破解 157
5.2.2 User-Agent設置 158
5.2.3 百度新聞標題爬取 159
5.3 案例實戰2:新浪新聞爬取 160
5.3.1 實體文件設置 161
5.3.2 新浪新聞爬取:爬取一條新聞 162
5.3.3 新浪新聞爬取:爬取多條新聞 166
5.3.4 新浪新聞爬取:生成文本文件報告 167
5.4 案例實戰3:豆瓣電影海報圖片爬取 170
5.4.1 用常規方法爬取 170
5.4.2 用Scrapy爬取 171
5.5 知識拓展:Python類的相關知識 176
5.5.1 類和對象的概念 176
5.5.2 類名、屬性和方法 176
5.5.3 類的進階知識 179
★ 課後習題 182
第6章 Scrapy應對反爬
6.1 中間件技術概述 183
6.1.1 下載器中間件 184
6.1.2 爬蟲中間件 184
6.2 Scrapy+IP代理:爬取搜狗圖片 185
6.2.1 用Requests庫批量下載圖片 186
6.2.2 用Scrapy框架批量下載圖片 198
6.3 Scrapy+Cookie:模擬登錄淘寶 202
6.3.1 在中間件文件中添加Cookie 202
6.3.2 編寫並運行爬蟲文件:爬取淘寶網頁 204
6.4 Scrapy+Selenium庫:爬取第一財經新聞 206
6.4.1 在中間件文件中添加Selenium庫 207
6.4.2 編寫並運行爬蟲文件:爬取新聞信息 209
★ 課後習題 214
第7章 爬蟲雲服務器部署
7.1 HTML網頁製作進階 215
7.1.1 表格 217
7.1.2 列表 218
7.1.3 樣式設計 220
7.1.4 背景設置 228
7.2 Flask Web編程基礎 232
7.2.1 Flask入門 232
7.2.2 用render_template()函數渲染頁面 237
7.2.3 用Flask連接數據庫 242
7.3 Flask Web編程實戰 247
7.3.1 展示單家公司的數據 247
7.3.2 展示多家公司的數據 252
7.3.3 展示輿情評分 255
7.3.4 只展示當天新聞 257
7.3.5 只展示負面新聞 258
7.4 雲服務器的購買和登錄 261
7.5 程序雲端部署及網站搭建 265
7.5.1 搭建程序的運行環境 265
7.5.2 程序24小時運行及Flask項目部署 266
7.5.3 域名申請和使用 267
★ 課後習題 270


作者介紹


王宇韜
(CFA、FRM、AQF)
華能貴誠信託金融科技實驗室發起人,賓夕法尼亞大學碩士,上海交通大學學士,曾在劍橋大學交流學習,兩年內通過CFA 3級、FRM 2級、AQF。
在華能貴誠信託自主研發了輿情監控系統、資金雷達、流程自動化AI系統、機器視頻面試系統等;專注於科技在金融領域的應用,編著有《Python金融大數據挖掘與分析全流程詳解》和《Python大數據分析與機器學習商業案例實戰》。

吳子湛
畢業於合肥工業大學計算機學院,就職於南京市秦淮區大數據中心,擁有多年IT
研發經驗,擅長大數據分析與挖掘。

史靖涵
北京郵電大學計算機專業學士,帝國理工大學和加州大學伯克利分校計算機專業碩士,擅長分佈式爬蟲與數據挖掘。




相關書籍

Mastering Machine Learning with Python in Six Steps, Second Edition: A Practical Implementation Guide to Predictive Data Analytics Using Python

作者 Swamynathan Manohar

2021-06-01

輕鬆學會 -- 運算思維與 Python 程式設計

作者 數位新知

2021-06-01

人工智能數學基礎與 Python 機器學習實戰

作者 劉潤森

2021-06-01