Python網絡爬蟲權威指南
《Python網絡爬蟲權威指南》,瑞安·米切爾 著,神煩小寶 譯,出版社: 人民郵電出版社。
人民郵電出版社是全國優秀出版社、全國百佳圖書出版單位。人民郵電出版社出版領域涵蓋科技出版、教育出版、大眾出版,涉及信息技術、通信、工業技術、科普[1]、經濟管理、攝影、藝術、運動與休閒、心理學、少兒、大中專教材等10餘個出版門類,年出版圖書[2]近萬種。
目錄
內容簡介
本書採用簡潔強大的Python語言,介紹了網頁抓取,並為抓取新式網絡中的各種數據類型提供了全面的指導。*一部分重點介紹網頁抓取的基本原理:如何用Python 從網絡服務器請求信息,如何對服務器的響應進行基本處理,以及如何以自動化手段與網站進行交互。*二部分介紹如何用網絡爬蟲測試網站,自動化處理,以及如何通過更多的方式接入網絡。
目錄
前言 xi
第 一部分 創建爬蟲
第 1 章 初見網絡爬蟲 3
1.1 網絡連接 3
1.2 BeautifulSoup 簡介 5
1.2.1 安裝BeautifulSoup 6
1.2.2 運行BeautifulSoup 8
1.2.3 可靠的網絡連接以及異常的處理 9
第 2 章 複雜HTML 解析 13
2.1 不是一直都要用錘子 13
2.2 再端一碗BeautifulSoup 14
2.2.1 BeautifulSoup 的find() 和find_all() 16
2.2.2 其他BeautifulSoup 對象 18
2.2.3 導航樹 18
2.3 正則表達式 22
2.4 正則表達式和BeautifulSoup 25
2.5 獲取屬性 26
2.6 Lambda 表達式 26
第3 章 編寫網絡爬蟲 28
3.1 遍歷單個域名 28
3.2 抓取整個網站 32
3.3 在互聯網上抓取 36
第4 章 網絡爬蟲模型 41
4.1 規劃和定義對象 41
4.2 處理不同的網站布局 45
4.3 結構化爬蟲 49
4.3.1 通過搜索抓取網站 49
4.3.2 通過鏈接抓取網站 52
4.3.3 抓取多種類型的頁面 54
4.4 關於網絡爬蟲模型的思考 55
第5 章 Scrapy 57
5.1 安裝Scrapy 57
5.2 創建一個簡易爬蟲 59
5.3 帶規則的抓取 60
5.4 創建item 64
5.5 輸出item 66
5.6 item 管線組件 66
5.7 Scrapy 日誌管理 69
5.8 更多資源 70
第6 章 存儲數據 71
6.1 媒體文件 71
6.2 把數據存儲到CSV 74
6.3 MySQL 75
6.3.1 安裝MySQL 76
6.3.2 基本命令 78
6.3.3 與Python 整合 81
6.3.4 數據庫技術與*佳實踐 84
6.3.5 MySQL 里的「六度空間遊戲」 86
6.4 Email 88
- 二部分 *級網頁抓取
第7 章 讀取文檔 93
7.1 文檔編碼 93
7.2 純文本 94
7.3 CSV 98
7.4 PDF 100
7.5 微軟Word 和.docx 102
第8 章 數據清洗 106
8.1 編寫代碼清洗數據 106
8.2 數據存儲後再清洗 111
第9 章 自然語言處理 115
9.1 概括數據 116
9.2 馬爾可夫模型 119
9.3 自然語言工具包 124
9.3.1 安裝與設置 125
9.3.2 用NLTK 做統計分析 126
9.3.3 用NLTK 做詞性分析 128
9.4 其他資源 131
第 10 章 穿越網頁表單與登錄窗口進行抓取 132
10.1 Python Requests 庫 132
10.2 提交一個基本表單 133
10.3 單選按鈕、複選框和其他輸入 134
10.4 提交文件和圖像 136
10.5 處理登錄和cookie 136
10.6 其他表單問題 139
第 11 章 抓取 140
11.1 簡介 140
11.2 Ajax 和動態HTML 143
11.2.1 在Python 中用Selenium 執行 144
11.2.2 Selenium 的其他webdriver 149
11.3 處理重定向 150
11.4 關於 的*後提醒 151
第 12 章 利用API 抓取數據 152
12.1 API 概述 152
12.1.1 HTTP 方法和API 154
12.1.2 更多關於API 響應的介紹 155
12.2 解析JSON 數據 156
12.3 無文檔的API 157
12.3.1 查找無文檔的API 159
12.3.2 記錄未被記錄的API 160
12.3.3 自動查找和記錄API 160
12.4 API 與其他數據源結合 163
12.5 再說一點API 165
第 13 章 圖像識別與文字處理 167
13.1 OCR 庫概述 168
13.1.1 Pillow 168
13.1.2 Tesseract 168
13.1.3 NumPy 170
13.2 處理格式規範的文字 171
13.2.1 自動調整圖像 173
13.2.2 從網站圖片中抓取文字 176
13.3 讀取驗證碼與訓練Tesseract 178
13.4 獲取驗證碼並提交答案 183
第 14 章 避開抓取陷阱 186
14.1 道德規範 186
14.2 讓網絡機器人看着像人類用戶 187
14.2.1 修改請求頭 187
14.2.2 用 處理cookie 189
14.2.3 時間就是一切 191
14.3 常見表單安全措施 191
14.3.1 隱含輸入字段值 192
14.3.2 避免蜜罐 192
14.4 問題檢查表 194
第 15 章 用爬蟲測試網站 196
15.1 測試簡介 196
15.2 Python 單元測試 197
15.3 Selenium 單元測試 201
15.4 單元測試與Selenium 單元測試的選擇 205
第 16 章 並行網頁抓取 206
16.1 進程與線程 206
16.2 多線程抓取 207
16.2.1 競爭條件與隊列 209
16.2.2 threading 模塊 212
16.3 多進程抓取 214
16.3.1 多進程抓取 216
16.3.2 進程間通信 217
16.4 多進程抓取的另一種方法 219
第 17 章 遠程抓取 221
17.1 為什麼要用遠程服務器 221
17.1.1 避免IP 地址被封殺 221
17.1.2 移植性與擴展性 222
17.2 Tor 代理服務器 223
17.3 遠程主機 224
17.3.1 從網站主機運行 225
17.3.2 從雲主機運行 225
17.4 其他資源 227
第 18 章 網頁抓取的法律與道德約束 228
18.1 商標、版權、專利 228
18.2 侵害動產 230
18.3 計算機欺詐與濫用法 232
18.4 robots.txt 和服務協議 233
18.5 3 個網絡爬蟲 236
18.5.1 eBay 起訴Bidder’s Edge 侵害其動產 236
18.5.2 美國政fu起訴Auernheimer 與《計算機欺詐與濫用法》 237
18.5.3 Field 起訴Google:版權和robots.txt 239
18.6 勇往直前 239
關於作者 241
關於封面 241
參考文獻
- ↑ 100部科普經典名著,豆瓣,2018-04-26
- ↑ 圖書的演變歷史資料,學習啦,2017-06-07