Python爬蟲開發(fā)與項(xiàng)目實(shí)戰(zhàn)
定 價(jià):¥79
中 教 價(jià):¥61.62 (7.80折)
庫(kù) 存 數(shù): 0
本書從基本的爬蟲原理開始講解,通過介紹Pthyon編程語(yǔ)言與HTML基礎(chǔ)知識(shí)引領(lǐng)讀者入門,之后根據(jù)當(dāng)前風(fēng)起云涌的云計(jì)算、大數(shù)據(jù)熱潮,重點(diǎn)講述了云計(jì)算的相關(guān)內(nèi)容及其在爬蟲中的應(yīng)用,進(jìn)而介紹如何設(shè)計(jì)自己的爬蟲應(yīng)用。主要內(nèi)容分為基礎(chǔ)篇、中級(jí)篇、深入篇,基礎(chǔ)篇包括Python編程基礎(chǔ)、Web前端基礎(chǔ)、HTML基礎(chǔ)知識(shí)、基礎(chǔ)爬蟲設(shè)計(jì)、強(qiáng)化爬蟲技術(shù)等。中級(jí)篇包括數(shù)據(jù)存儲(chǔ)、動(dòng)態(tài)網(wǎng)站抓取、協(xié)議分析、Scrapy爬蟲框架分析及實(shí)戰(zhàn)案例等。高級(jí)篇包括增量式爬蟲、分布式爬蟲、人性化爬蟲等框架設(shè)計(jì)。
目 錄 前言 基礎(chǔ)篇 第1章 回顧Python編程2 1.1 安裝Python2 1.1.1 Windows上安裝Python2 1.1.2 Ubuntu上的Python3 1.2 搭建開發(fā)環(huán)境4 1.2.1 Eclipse+PyDev4 1.2.2 PyCharm10 1.3 IO編程11 1.3.1 文件讀寫11 1.3.2 操作文件和目錄14 1.3.3 序列化操作15 1.4 進(jìn)程和線程16 1.4.1 多進(jìn)程16 1.4.2 多線程22 1.4.3 協(xié)程25 1.4.4 分布式進(jìn)程27 1.5 網(wǎng)絡(luò)編程32 1.5.1 TCP編程33 1.5.2 UDP編程35 1.6 小結(jié)36 第2章 Web前端基礎(chǔ)37 2.1 W3C標(biāo)準(zhǔn)37 2.1.1 HTML37 2.1.2 CSS47 2.1.3 JavaScript51 2.1.4 XPath56 2.1.5 JSON61 2.2 HTTP標(biāo)準(zhǔn)61 2.2.1 HTTP請(qǐng)求過程62 2.2.2 HTTP狀態(tài)碼含義62 2.2.3 HTTP頭部信息63 2.2.4 Cookie狀態(tài)管理66 2.2.5 HTTP請(qǐng)求方式66 2.3 小結(jié)68 第3章 初識(shí)網(wǎng)絡(luò)爬蟲69 3.1 網(wǎng)絡(luò)爬蟲概述69 3.1.1 網(wǎng)絡(luò)爬蟲及其應(yīng)用69 3.1.2 網(wǎng)絡(luò)爬蟲結(jié)構(gòu)71 3.2 HTTP請(qǐng)求的Python實(shí)現(xiàn)72 3.2.1 urllib2/urllib實(shí)現(xiàn)72 3.2.2 httplib/urllib實(shí)現(xiàn)76 3.2.3 更人性化的Requests77 3.3 小結(jié)82 第4章 HTML解析大法83 4.1 初識(shí)Firebug83 4.1.1 安裝Firebug84 4.1.2 強(qiáng)大的功能84 4.2 正則表達(dá)式95 4.2.1 基本語(yǔ)法與使用96 4.2.2 Python與正則102 4.3 強(qiáng)大的BeautifulSoup108 4.3.1 安裝BeautifulSoup108 4.3.2 BeautifulSoup的使用109 4.3.3 lxml的XPath解析124 4.4 小結(jié)126 第5章 數(shù)據(jù)存儲(chǔ)(無數(shù)據(jù)庫(kù)版)127 5.1 HTML正文抽取127 5.1.1 存儲(chǔ)為JSON127 5.1.2 存儲(chǔ)為CSV132 5.2 多媒體文件抽取136 5.3 Email提醒137 5.4 小結(jié)138 第6章 實(shí)戰(zhàn)項(xiàng)目:基礎(chǔ)爬蟲139 6.1 基礎(chǔ)爬蟲架構(gòu)及運(yùn)行流程140 6.2 URL管理器141 6.3 HTML下載器142 6.4 HTML解析器143 6.5 數(shù)據(jù)存儲(chǔ)器145 6.6 爬蟲調(diào)度器146 6.7 小結(jié)147 第7章 實(shí)戰(zhàn)項(xiàng)目:簡(jiǎn)單分布式爬蟲148 7.1 簡(jiǎn)單分布式爬蟲結(jié)構(gòu)148 7.2 控制節(jié)點(diǎn)149 7.2.1 URL管理器149 7.2.2 數(shù)據(jù)存儲(chǔ)器151 7.2.3 控制調(diào)度器153 7.3 爬蟲節(jié)點(diǎn)155 7.3.1 HTML下載器155 7.3.2 HTML解析器156 7.3.3 爬蟲調(diào)度器157 7.4 小結(jié)159 中級(jí)篇 第8章 數(shù)據(jù)存儲(chǔ)(數(shù)據(jù)庫(kù)版)162 8.1 SQLite162 8.1.1 安裝SQLite162 8.1.2 SQL語(yǔ)法163 8.1.3 SQLite增刪改查168 8.1.4 SQLite事務(wù)170 8.1.5 Python操作SQLite171 8.2 MySQL174 8.2.1 安裝MySQL174 8.2.2 MySQL基礎(chǔ)177 8.2.3 Python操作MySQL181 8.3 更適合爬蟲的MongoDB183 8.3.1 安裝MongoDB184 8.3.2 MongoDB基礎(chǔ)187 8.3.3 Python操作MongoDB194 8.4 小結(jié)196 第9章 動(dòng)態(tài)網(wǎng)站抓取197 9.1 Ajax和動(dòng)態(tài)HTML197 9.2 動(dòng)態(tài)爬蟲1:爬取影評(píng)信息198 9.3 PhantomJS207 9.3.1 安裝PhantomJS207 9.3.2 快速入門208 9.3.3 屏幕捕獲211 9.3.4 網(wǎng)絡(luò)監(jiān)控213 9.3.5 頁(yè)面自動(dòng)化214 9.3.6 常用模塊和方法215 9.4 Selenium218 9.4.1 安裝Selenium219 9.4.2 快速入門220 9.4.3 元素選取221 9.4.4 頁(yè)面操作222 9.4.5 等待225 9.5 動(dòng)態(tài)爬蟲2:爬取去哪網(wǎng)227 9.6 小結(jié)230 第10章 Web端協(xié)議分析231 10.1 網(wǎng)頁(yè)登錄POST分析231 10.1.1 隱藏表單分析231 10.1.2 加密數(shù)據(jù)分析234 10.2 驗(yàn)證碼問題246 10.2.1 IP代理246 10.2.2 Cookie登錄249 10.2.3 傳統(tǒng)驗(yàn)證碼識(shí)別250 10.2.4 人工打碼251 10.2.5 滑動(dòng)驗(yàn)證碼252 10.3 www>m>wap252 10.4 小結(jié)254 第11章 終端協(xié)議分析255 11.1 PC客戶端抓包分析255 11.1.1 HTTP Analyzer簡(jiǎn)介255 11.1.2 蝦米音樂PC端API實(shí)戰(zhàn)分析257 11.2 App抓包分析259 11.2.1 Wireshark簡(jiǎn)介259 11.2.2 酷我聽書App端API實(shí)戰(zhàn)分析266 11.3 API爬蟲:爬取mp3資源信息268 11.4 小結(jié)272 第12章 初窺Scrapy爬蟲框架273 12.1 Scrapy爬蟲架構(gòu)273 12.2 安裝Scrapy275 12.3 創(chuàng)建cnblogs項(xiàng)目276 12.4 創(chuàng)建爬蟲模塊277 12.5 選擇器278 12.5.1 Selector的用法278 12.5.2 HTML解析實(shí)現(xiàn)280 12.6 命令行工具282 12.7 定義Item284 12.8 翻頁(yè)功能286 12.9 構(gòu)建Item Pipeline287 12.9.1 定制Item Pipeline287 12.9.2 激活I(lǐng)tem Pipeline288 12.10 內(nèi)置數(shù)據(jù)存儲(chǔ)288 12.11 內(nèi)置圖片和文件下載方式289 12.12 啟動(dòng)爬蟲294 12.13 強(qiáng)化爬蟲297 12.13.1 調(diào)試方法297 12.13.2 異常299 12.13.3 控制運(yùn)行狀態(tài)300 12.14 小結(jié)301 第13章 深入Scrapy爬蟲框架302 13.1 再看Spider302 13.2 Item Loader308 13.2.1 Item與Item Loader308 13.2.2 輸入與輸出處理器309 13.2.3 Item Loader Context310 13.2.4 重用和擴(kuò)展Item Loader311 13.2.5 內(nèi)置的處理器312 13.3 再看Item Pipeline314 13.4 請(qǐng)求與響應(yīng)315 13.4.1 Request對(duì)象315 13.4.2 Response對(duì)象318 13.5 下載器中間件320 13.5.1 激活下載器中間件320 13.5.2 編寫下載器中間件321 13.6 Spide