Python 網絡爬蟲實戰, 2/e

Python 網絡爬蟲實戰, 2/e

作者: 胡松濤
出版社: 清華大學
出版在: 2018-09-05
ISBN-13: 9787302510086
ISBN-10: 7302510083
裝訂格式: 平裝
總頁數: 381 頁





內容描述


本書從Python 3.6.4的安裝開始,詳細講解了Python從簡單程序延伸到Python網絡爬蟲的全過程。本書從實戰出發,根據不同的需求選取不同的爬蟲,有針對性地講解了幾種Python網絡爬蟲。
本書共10章,涵蓋的內容有Python3.6語言的基本語法、Python常用IDE的使用、Python第三方模塊的導入使用、Python爬蟲常用模塊、Scrapy爬蟲、Beautiful Soup爬蟲、Mechanize模擬瀏覽器和Selenium模擬瀏覽器、Pyspider爬蟲框架、爬蟲與反爬蟲。本書所有源代碼已上傳網盤供讀者下載。
本書內容豐富,實例典型,實用性強。適合Python網絡爬蟲初學者、Python數據分析與挖掘技術初學者,以及高等院校和培訓學校相關專業的師生閱讀。

海報:


目錄大綱


第1章Python環境配置1 
1.1 Python簡介1 
1.1.1 Python的歷史由來1 
1.1.2 Python的現狀2 
1.1.3 Python的應用2 
1.2 Python 3.6.4開發環境配置4 
1.2.1 Windows下安裝Python 4 
1.2.2 Windows下安裝配置pip 9 
1.2.3 Linux下安裝Python 10 
1.2.4 Linux下安裝配置pip 13 
1.2.5永遠的hello world 16 
1.3本章小結21 
第2章Python基礎22 
2.1 Python變量類型22 
2.1.1數字22 
2.1.2字符串25 
2.1.3列表29 
2.1.4元組34 
2.1.5字典37 
2.2 Python語句41 
2.2.1條件語句——if else 41 
2.2.2有限循環——for 42 
2.2.3無限循環——while 44 
2.2.4中斷循環——continue、break 46 
2.2.5異常處理——try except 48 
2.2.6導入模塊——import 52
2.3函數和類56 
2.3.1函數56 
2.3.2類62 
2.4 Python內置函數68 
2.4.1常用內置函數68 
2.4.2高級內置函數69 
2.5 Python代碼格式74 
2.5.1 Python代碼縮進74 
2.5.2 Python命名規則75 
2.5.3 Python代碼註釋76 
2.6 Python調試79 
2.6.1 Windows下IDLE調試79 
2.6.2 Linux下pdb調試82 
2.7本章小結87 
第3章簡單的Python腳本88 
3.1九九乘法表88 
3.1 .1 Project分析88 
3.1.2 Project實施88 
3.2斐波那契數列90 
3.2.1 Project分析90 
3.2.2 Project實施90 
3.3概率計算91 
3.3.1 Project分析91 
3.3.2 Project實施92 
3.4讀寫文件93 
3.4.1 Project分析93 
3.4.2 Project實施94 
3.5類的繼承與重載96 
3.5.1 Project 1分析96
3.5.2 Project 1實施98 
3.5.3 Project 2分析100 
3.5.4 Project 2實施101 
3.6多線程107 
3.6.1 Project 1分析107 
3.6.2 Project 1實施109 
3.6.3 Project 2分析112 
3.6.4 Project 2實施115 
3.7本章小結117 
第4章Python爬蟲常用模塊118 
4.1網絡爬蟲技術核心118 
4.1.1網絡爬蟲實現原理118 
4.1.2爬行策略119 
4.1.3身份識別119 
4.2 Python 3標準庫之urllib.request模塊120 
4.2.1 urllib.request請求返回網頁120 
4.2.2 urllib.request使用代理訪問網頁122 
4.2.3 urllib.request修改header 125 
4.3 Python 3標準庫之logging模塊129 
4.3.1簡述logging模塊129 
4.3 .2自定義模塊myLog 133 
4.4 re模塊(正則表達式) 135 
4.4.1 re模塊(正則表達式操作) 136 
4.4.2 re模塊實戰137 
4.5其他有用模塊139
4.5.1 sys模塊(系統參數獲取) 139 
4.5.2 time模塊(獲取時間信息) 141 
4.6本章小結144 
第5章Scrapy爬蟲框架145 
5.1安裝Scrapy 145 
5.1.1 Windows下安裝Scrapy環境145 
5.1.2 Linux下安裝Scrapy 146 
5.1.3 vim編輯器147 
5.2 Scrapy選擇器XPath和CSS 148 
5.2.1 XPath選擇器148 
5.2.2 CSS選擇器151 
5.2.3其他選擇器152 
5.3 Scrapy爬蟲實戰一:今日影視153 
5.3 .1創建Scrapy項目153 
5.3.2 Scrapy文件介紹155 
5.3.3 Scrapy爬蟲編寫157 
5.4 Scrapy爬蟲實戰二:天氣預報164 
5.4.1項目準備165 
5.4.2創建編輯Scrapy爬蟲166 
5.4.3數據存儲到json 173 
5.4.4數據存儲到MySQL 175 
5.5 Scrapy爬蟲實戰三:獲取代理182 
5.5.1項目準備182 
5.5.2創建編輯Scrapy爬蟲183 
5.5.3多個Spider 188 
5.5.4處理Spider數據192
5.6 Scrapy爬蟲實戰四:糗事百科194 
5.6.1目標分析195 
5.6.2創建編輯Scrapy爬蟲195 
5.6.3 Scrapy項目中間件——添加headers 196 
5.6.4 Scrapy項目中間件——添加proxy 200 
5.7 Scrapy爬蟲實戰五:爬蟲攻防202 
5.7.1創建一般爬蟲202 
5.7.2封鎖間隔時間破解206 
5.7.3封鎖Cookies破解206 
5.7.4封鎖User-Agent破解207 
5.7.5封鎖IP破解212 
5.8本章小結215 
第6章Beautiful Soup爬蟲216 
6.1安裝Beautiful Soup環境216 
6.1.1 Windows下安裝Beautiful Soup 216 
6.1.2 Linux下安裝Beautiful Soup 217 
6.1.3最強大的IDE——Eclipse 218 
6.2 Beautiful Soup解析器227 
6.2.1 bs4解析器選擇227 
6.2.2 lxml解析器安裝227 
6.2.3使用bs4過濾器229 
6.3 bs4爬蟲實戰一:獲取百度貼吧內容234 
6.3.1目標分析234 
6.3.2項目實施236
6.3.3代碼分析243 
6.3.4 Eclipse調試244 
6.4 bs4爬蟲實戰二:獲取雙色球中獎信息245 
6.4.1目標分析246 
6.4.2項目實施248 
6.4.3保存結果到Excel 251 
6.4.4代碼分析256 
6.5 bs4爬蟲實戰三:獲取起點小說信息257 
6.5.1目標分析257 
6.5.2項目實施259 
6.5.3保存結果到MySQL 261 
6.5.4代碼分析265 
6.6 bs4爬蟲實戰四:獲取電影信息266 
6.6.1目標分析266 
6.6.2項目實施267 
6.6.3 bs4反爬蟲270 
6.6.4代碼分析273 
6.7 bs4爬蟲實戰五:獲取音悅台榜單273 
6.7.1目標分析273 
6.7.2項目實施274 
6.7.3代碼分析279 
6.8本章小結280 
第7章Mechanize模擬瀏覽器281 
7.1安裝Mechanize模塊281 
7.1.1 Windows下安裝Mechanize 281 
7.1.2 Linux下安裝Mechanize 282 
7.2 Mechanize測試283
7.2.1 Mechanize百度283 
7.2.2 Mechanize光貓F460 286 
7.3 Mechanize實站一:獲取Modem信息290 
7.3.1獲取F460數據290 
7.3.2代碼分析293 
7.4 Mechanize實戰二:獲取音悅台公告293 
7.4. 1登錄原理293 
7.4.2獲取Cookie的方法294 
7.4.3獲取Cookie 298 
7.4.4使用Cookie登錄獲取數據302 
7.5本章小結305 
第8章Selenium模擬瀏覽器306 
8.1安裝Selenium模塊306 
8.1.1 Windows下安裝Selenium模塊306 
8.1.2 Linux下安裝Selenium模塊307 
8.2瀏覽器選擇307 
8.2.1 Webdriver支持列表307 
8.2.2 Windows下安裝PhantomJS 308 
8.2.3 Linux下安裝PhantomJS 310 
8.3 Selenium&PhantomJS抓取數據312 
8.3.1獲取百度搜索結果312 
8.3.2獲取搜索結果314 
8.3.3獲取有效數據位置317 
8.3.4從位置中獲取有效數據319
8.4 Selenium&PhantomJS實戰一:獲取代理319 
8.4.1準備環境320 
8.4.2爬蟲代碼321 
8.4.3代碼解釋324 
8.5 Selenium&PhantomJS實戰二:漫畫爬蟲324 
8.5.1準備環境325 
8.5.2爬蟲代碼326 
8.5.3代碼解釋329 
8.6本章小結329 
第9章Pyspider爬蟲框架330 
9.1安裝Pyspider 330 
9.1.1 Windows下安裝Pyspider 330 
9.1.2 Linux下安裝Pyspider 331 
9.1.3選擇器pyquery測試333 
9.2 Pyspider實戰一:Youku影視排行335 
9.2.1創建項目336 
9.2.2爬蟲編寫338 
9.3 Pyspider實戰二:電影下載346 
9.3.1項目分析346 
9.3.2爬蟲編寫349 
9.3.3爬蟲運行、調試355 
9.3.4刪除項目360 
9.4 Pyspider實戰三:音悅台MusicTop 363 
9.4.1項目分析363 
9.4.2爬蟲編寫364 
9.5本章小結369 
第10章爬蟲與反爬蟲370
10.1防止爬蟲IP被禁370 
10.1.1反爬蟲在行動370 
10.1.2爬蟲的應對373 
10.2在爬蟲中使用Cookies 377 
10.2.1通過Cookies反爬蟲377 
10.2.2帶Cookies的爬蟲378 
10.2.3動態加載反爬蟲381 
10.2.4使用瀏覽器獲取數據381 
10.3本章小結381


作者介紹


胡松濤
高級工程師,參與多個Linux開源項目,github知名代碼分享者,活躍於國內著名的多個開源論壇。




相關書籍

TensorFlow深度學習:數學原理與Python實戰進階

作者 Santanu Pattanayak

2018-09-05

卡爾曼濾波理論與實踐:MATLAB 版, 4/e

作者 莫欣德S.格雷沃(Mohinder S.Grewal) 安格斯P.安德魯斯(Angus P.Andrews) 劉郁林 陳紹榮 徐舜

2018-09-05

OpenCV 3 學習手冊 (Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library)

作者 Adrian Kaehler Gary Bradski 賴屹民 譯

2018-09-05