注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡網(wǎng)絡與數(shù)據(jù)通信網(wǎng)絡服務Python3爬蟲實戰(zhàn):數(shù)據(jù)清洗、數(shù)據(jù)分析與可視化

Python3爬蟲實戰(zhàn):數(shù)據(jù)清洗、數(shù)據(jù)分析與可視化

Python3爬蟲實戰(zhàn):數(shù)據(jù)清洗、數(shù)據(jù)分析與可視化

定 價:¥59.80

作 者: 姚良
出版社: 中國鐵道出版社
叢編項:
標 簽: 暫缺

ISBN: 9787113260590 出版時間: 2019-10-01 包裝:
開本: 頁數(shù): 字數(shù):  

內容簡介

  作為一個自學爬蟲的過來人,曾經(jīng)走過很多彎路,在自學的道路上也迷茫過。每次面對一個全新的網(wǎng)站,都像是踏進一個未知的世界。你不知道前面有哪些反爬手段在等著你;你不知道你會踩進哪個坑里。我做爬蟲的幾年時間里,爬過很多的網(wǎng)站、遇到過很多的難題。這本書就是我這幾年經(jīng)驗的總結,從開始的工具的學習使用,到實戰(zhàn)項目的爬取,難度一步一步的升級,需求也越來越復雜,有各式各樣的爬取方式。 \n本書主要內容與數(shù)據(jù)爬取相關,包括編寫爬蟲所需要的基礎編程知識,如Requests包、Scrapy框架和數(shù)據(jù)庫的使用,到項目實戰(zhàn)教程,適合Python基礎入門的讀者。如果你是其他行業(yè)的從業(yè)者,想進入IT行業(yè)成為一位爬蟲工程師,又或者你已經(jīng)是IT行業(yè)的從業(yè)者,本書在能夠讓你在對爬蟲工程師的工作內容有所了解的同時,也能讓你掌握作為一個爬蟲工程師所需要具備的基礎技能。

作者簡介

暫缺《Python3爬蟲實戰(zhàn):數(shù)據(jù)清洗、數(shù)據(jù)分析與可視化》作者簡介

圖書目錄


第一篇 基礎知識 \n
第1章 Python環(huán)境搭建 \n
1.1 Python的安裝 2 \n
1.1.1 Windows下Python的安裝 2 \n
1.1.2 Mac OS X下Python的安裝 3 \n
1.1.3 Linux下Python的安裝 3 \n
1.1.4 安裝pip工具 4 \n
1.2 虛擬環(huán)境Virtualenv 5 \n
1.2.1 Virtualenv的安裝 5 \n
1.2.2 創(chuàng)建虛擬環(huán)境 5 \n
1.2.3 激活虛擬環(huán)境 5 \n
1.2.4 創(chuàng)建指定Python版本的虛擬環(huán)境 5 \n
1.3 選擇合適的編輯器 6 \n
1.3.1 Vim 6 \n
1.3.2 Atom 6 \n
1.3.3 Sublime Text 6 \n
1.3.4 Notepad++ 6 \n
1.3.5 Pycharm 6 \n
第2章 常用爬蟲庫Requests \n
2.1 安裝Requests 7 \n
2.1.1 用pip安裝 7 \n
2.1.2 用github源碼安裝 7 \n
2.1.3 用curl安裝 7 \n
2.2 了解 Requests的功能 8 \n
2.2.1 使用GET和POST發(fā)送請求 8 \n
2.2.2 通過URL傳遞參數(shù) 9 \n
2.2.3 設置超時 9 \n
2.2.4 查看返回內容 9 \n
2.2.5 設置請求頭 10 \n
2.2.6 更多復雜的Post請求 10 \n
2.2.7 返回對象狀態(tài)碼 12 \n
2.2.8 設置代理IP 13 \n
2.3 BeautifulSoup的安裝和使用 14 \n
2.3.1 使用pip安裝BeautifulSoup 14 \n
2.3.2 使用BeautifulSoup定位元素 14 \n
2.4 初識自動化測試工具Selenium 15 \n
2.4.1 Selenium安裝 15 \n
2.4.2 使用Selnium爬取網(wǎng)站 15 \n
2.5 Selenium定位元素 16 \n
2.5.1 通過屬性定位 17 \n
2.5.2 通過xpath定位 17 \n
2.6 Selenium反爬設置 18 \n
2.6.1 設置請求頭 18 \n
2.6.2 設置代理IP 19 \n
第3章 常用爬蟲框架Scrapy \n
3.1 認識Scrapy 21 \n
3.1.1 Scrapy爬取quotes簡單示例 21 \n
3.1.2 安裝所需依賴包 23 \n
3.1.3 使用虛擬環(huán)境 23 \n
3.2 Scrapy shell的使用 24 \n
3.2.1 運行shell 24 \n
3.2.2 使用Scrapy shell爬取Scrapy.org 24 \n
3.2.3 爬蟲調用shell 26 \n
3.3 使用Scrapy爬取quotes 26 \n
3.3.1 創(chuàng)建Scrapy項目并新建爬蟲 27 \n
3.3.2 爬取和提取數(shù)據(jù) 27 \n
3.3.3 通過腳本運行Scrapy爬蟲 29 \n
3.3.4 在同一進程下運行多個爬蟲 29 \n
3.3.5 簡易的分布式爬蟲思路 30 \n
3.3.6 防止爬蟲被ban 31 \n
3.4 setting基本配置 31 \n
3.5 Pipeline模塊 32 \n
3.5.1 爬取文字板塊 32 \n
3.5.2 編寫Pipeline模塊 35 \n
3.5.3 通過Pipeline將數(shù)據(jù)寫入MongoDB數(shù)據(jù)庫 36 \n
3.5.4 ImagesPipeline處理圖片 37 \n
3.5.5 FilePipeline下載文件 40 \n
3.6 Middleware中間件 41 \n
3.6.1 Downloader Middleware 41 \n
3.6.2 隨機請求頭中間件 42 \n
3.6.3 更換代理IP中間件 45 \n
3.6.4 通過Downloader Middleware使用Selenium 46 \n
3.6.5 Spider Middleware 47 \n
3.7 新功能拓展 48 \n
3.7.1 信號signals 48 \n
3.7.2 自定義拓展 51 \n
第4章 數(shù)據(jù)存儲——數(shù)據(jù)庫的選擇 \n
4.1 MySQL數(shù)據(jù)庫 53 \n
4.1.1 MySQL的安裝 53 \n
4.1.2 幾款可視化工具 54 \n
4.1.3 數(shù)據(jù)庫連接 55 \n
4.1.4 數(shù)據(jù)庫插入操作 55 \n
4.1.5 數(shù)據(jù)庫查詢 56 \n
4.1.6 數(shù)據(jù)庫更新操作 56 \n
4.1.7 爬取寫入數(shù)據(jù)庫 57 \n
4.2 MongoDB數(shù)據(jù)庫 58 \n
4.2.1 MongoDB安裝 58 \n
4.2.2 連接數(shù)據(jù)庫 59 \n
4.2.3 查詢數(shù)據(jù)庫 59 \n
4.2.4 插入和更新數(shù)據(jù)庫 59 \n
4.2.5 爬取數(shù)據(jù)并插入到MongoDB數(shù)據(jù)庫中 60 \n
4.3 Redis數(shù)據(jù)庫 60 \n
4.3.1 Redis安裝 60 \n
4.3.2 連接Redis數(shù)據(jù)庫 61 \n
4.3.3 Python操作Redis數(shù)據(jù)庫 61 \n
4.3.4 爬取并寫入Redis做緩存 62 \n
\n
\n
第5章 效率為王——分布式爬蟲 \n
5.1 什么是分布式爬蟲 64 \n
5.1.1 分布式爬蟲的效率 64 \n
5.1.2 實現(xiàn)分布式的方法 64 \n
5.2 Celery 65 \n
5.2.1 Celery入門 65 \n
5.2.2 Celery分布式爬蟲 66 \n
5.3 使用Scrapy-redis的分布式爬蟲 67 \n
5.3.1 Scrapy-redis安裝與入門 67 \n
5.3.2 創(chuàng)建Scrapy-redis爬蟲項目 68 \n
第6章 抓包的使用與分析 \n
6.1 利用抓包分析目標網(wǎng)站 72 \n
6.1.1 如何抓包 72 \n
6.1.2 網(wǎng)頁抓包分析 72 \n
6.2 手機APP抓包 74 \n
6.2.1 使用fiddler抓包 75 \n
6.2.2 HTTPS證書安裝 75 \n
6.2.3 booking手機端抓包 76 \n
第7章 Websocket通信網(wǎng)站爬取 \n
7.1 什么是Websocket 79 \n
7.1.1 Websocket-clinet 79 \n
7.1.2 Websocket-clinet簡單入門 79 \n
7.2 使用Websocket爬取財經(jīng)網(wǎng)站 81 \n
第8章 驗證碼破解 \n
8.1 關于驗證碼 84 \n
8.1.1 一般的驗證碼 84 \n
8.1.2 極驗驗證 84 \n
8.2 極驗滑動驗證破解 85 \n
8.2.1 準備工具 85 \n
8.2.2 分析滑動驗證碼 85 \n
8.2.3 開始破解極限滑動驗證碼 87 \n
8.3 圖片驗證碼破解 89 \n
8.3.1 準備工具 89 \n
8.3.2 文字圖像識別 89 \n
8.3.3 識別驗證碼 90 \n
第9章 多線程與多進程并發(fā)爬取 \n
9.1 多線程 92 \n
9.1.1 堵塞與非堵塞 92 \n
9.1.2 繼承threading.Thread創(chuàng)建類 96 \n
9.1.3 多線程的鎖 98 \n
9.1.4 queue隊列 100 \n
9.1.5 線程池 101 \n
9.2 多線程爬蟲 103 \n
9.2.1 爬蟲框架 103 \n
9.2.2 編寫爬蟲 104 \n
9.2.3 以多線程方式啟動 105 \n
9.3 多進程 107 \n
9.3.1 multiprocessing模塊 107 \n
9.3.2 通過Pool進程池創(chuàng)建進程 108 \n
9.3.3 multiprocessing.Queue隊列 109 \n
9.3.4 multiprocessing.Pipe管道 112 \n
9.3.5 multiprocessing.Lock鎖 113 \n
9.4 多進程爬蟲 114 \n
9.4.1 多進程爬取音頻 114 \n
9.4.2 多進程加多線程進行爬取 116 \n
第10章 爬蟲接口優(yōu)化 \n
10.1 Gunicorn的安裝與使用 119 \n
10.2 Gunicorn配置 121 \n
10.2.1 配置參數(shù) 121 \n
10.2.2 通過config文件啟動 123 \n
第11章 使用Docker部署爬蟲 \n
11.1 Docker 125 \n
11.1.1 Docker的安裝 125 \n
11.1.2 Docker的鏡像 125 \n
11.1.3 構建自己的Docker鏡像 127 \n
11.1.4 容器使用 127 \n
11.1.5 Dockerfile 129 \n
11.2 爬蟲部署 130 \n
11.2.1 爬蟲接口 130 \n
11.2.2 部署爬蟲接口 131 \n
第二篇 實戰(zhàn)案例 \n
第12章 實戰(zhàn)1:建立代理IP池 \n
12.1 爬取免費代理IP 136 \n
12.1.1 爬取代理IP 136 \n
12.1.2 檢驗代理IP 138 \n
12.2 建立代理IP池 138 \n
12.2.1 檢驗代理IP 138 \n
12.2.2 Redis消息隊列 140 \n
12.2.3 master爬蟲 142 \n
第13章 實戰(zhàn)2:磁力鏈接搜索器 \n
13.1 爬取磁力搜索平臺 145 \n
13.1.1 磁力平臺 145 \n
13.1.2 slave爬蟲 146 \n
13.2 實現(xiàn)磁力搜索器 148 \n
13.2.1 展示與交互 148 \n
13.2.2 數(shù)據(jù)查詢 150 \n
第14章 實戰(zhàn)3:爬蟲管家 \n
14.1 QQ機器人 152 \n
14.1.1 qqbot 152 \n
14.1.2 基本操作 152 \n
14.1.3 實現(xiàn)自己的機器人 153 \n
14.2 爬蟲監(jiān)控機器人 153 \n
第15章 實戰(zhàn)4:數(shù)據(jù)可視化 \n
15.1 可視化包Pyecharts 156 \n
15.1.1 Pyecharts的安裝 156 \n
15.1.2 地圖展示數(shù)據(jù) 157 \n
15.2 爬取最低價機票數(shù)據(jù) 158 \n
15.2.1 破解旅游網(wǎng)站價格日歷接口 159 \n
15.2.2 爬取旅游網(wǎng)站 160 \n
15.2.3 將數(shù)據(jù)可視化 161 \n
第16章 實戰(zhàn)5:爬取貼吧中的郵箱 \n
16.1 爬取網(wǎng)站 164 \n
16.1.1 爬取高校名單 164 \n
16.1.2 利用正則表達式匹配號碼 165 \n
16.2 分析貼吧搜索頁面并提取號碼 165 \n
16.3 使用Scrapy開始編碼 167 \n
16.3.1 創(chuàng)建貼吧Scrapy項目 167 \n
16.3.2 新建爬蟲并編寫爬蟲邏輯 168 \n
16.3.3 數(shù)據(jù)處理 170 \n
第17章 實戰(zhàn)6:批量爬取企業(yè)信息 \n
17.1 從第三方平臺獲取企業(yè)名 172 \n
17.2 如何爬取企業(yè)詳細信息 174 \n
第18章 實戰(zhàn)7:爬取公眾號歷史文章 \n
18.1 分析公眾號接口 177 \n
18.1.1 開始抓包 177 \n
18.1.2 分析接口 179 \n
18.1.3 嘗試請求數(shù)據(jù) 179 \n
18.2 爬取公眾號 180 \n
18.2.1 爬取思路 180 \n
18.2.2 請求接口獲取文章URL 180 \n
18.2.3 解析文章網(wǎng)頁源碼 181 \n
18.2.4 合并代碼 183 \n
第19章 實戰(zhàn)8:高效爬取——異步爬蟲 \n
19.1 異步編程 186 \n
19.1.1 asyncio庫 186 \n
19.1.2 aiohttp庫 187 \n
19.1.3 訪問多個URL 188 \n
19.2 爬取圖片 189 \n
19.2.1 為函數(shù)命名 189 \n
19.2.2 對網(wǎng)頁進行解析 190 \n
19.2.3 異步爬取圖片 190 \n
第20章 實戰(zhàn)9:爬取漫畫網(wǎng)站 \n
20.1 爬取單部漫畫 193 \n
20.1.1 單集漫畫的爬取 193 \n
20.1.2 全集漫畫的爬取 195 \n
20.2 爬取漫畫全站 196 \n
第21章 實戰(zhàn)10:給kindle推送爬取的小說 \n
21.1 用Python發(fā)送郵件 199 \n
21.1.1 純文本郵件的發(fā)送 199 \n
21.1.2 帶附件郵件的發(fā)送 200 \n
21.2 爬取小說 201 \n
21.2.1 制作word文檔 201 \n
21.2.2 爬取baka-tsuki.org 202 \n
第22章 實戰(zhàn)11:爬取游民星空壁紙 \n
22.1 星空壁紙的爬取準備 205 \n
22.2 爬取壁紙 206 \n
22.2.1 獲取圖片和下一頁地址 206 \n
22.2.2 爬取列表頁 208 \n
22.2.3 爬取高清圖片資源 209 \n
第23章 綜合實戰(zhàn):建立一個小網(wǎng)站 \n
23.1 Flask框架 210 \n
23.1.1 寫一個簡單的hello word網(wǎng)頁 210 \n
23.1.2 添加html模板 210 \n
23.2 Bootstrap框架 212 \n
23.2.1 使用Bootstrap框架 213 \n
23.2.2 Bootstrap在線模板 213 \n
23.2.3 添加壁紙板塊 215 \n
第24章 綜合實戰(zhàn):爬取電影網(wǎng)站 \n
24.1 理清爬蟲的思路 218 \n
24.2 分步編碼實現(xiàn)爬取 219 \n
24.2.1 爬取詳情頁 219 \n
24.2.2 爬取列表頁 220 \n
24.2.3 爬取首頁 221 \n
24.2.4 寫入數(shù)據(jù)庫 222 \n
第25章 綜合實戰(zhàn):建立電影小站 \n
25.1 搭建項目 224 \n
25.1.1 sqlite數(shù)據(jù)庫 224 \n
25.1.2 創(chuàng)建項目 225 \n
25.1.3 通過藍圖建立電影板塊 226 \n
25.2 建立模板 229 \n
25.2.1 flask-bootstrap 229 \n
25.2.2 電影頁面 231 \n
25.2.3 電影分類 233 \n
25.2.4 電影詳情頁 237 \n
25.2.5 電影搜索頁 239 \n
第26章 綜合實戰(zhàn):磁力搜索 \n
26.1 磁力搜索 241 \n
26.1.1 如何高效爬取 241 \n
26.1.2 建立Celery任務 244 \n
26.2 Web部分 248 \n
26.2.1 建立模型 248 \n
26.2.2 視圖函數(shù) 248 \n
26.2.3 關于產(chǎn)品 251

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號