注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書教育/教材/教輔教材研究生/本科/專科教材Python網(wǎng)絡(luò)爬蟲:從入門到精通

Python網(wǎng)絡(luò)爬蟲:從入門到精通

Python網(wǎng)絡(luò)爬蟲:從入門到精通

定 價(jià):¥49.80

作 者: 呂云翔
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787115611901 出版時(shí)間: 2023-07-01 包裝: 平裝-膠訂
開本: 128開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書主要介紹如何使用Python語言進(jìn)行網(wǎng)絡(luò)爬蟲程序的開發(fā),從Python語言的基本特性入手,詳細(xì)介紹Python網(wǎng)絡(luò)爬蟲開發(fā)的多個(gè)方面,涉及HTTP、HTML、正則表達(dá)式、JavaScript、自然語言處理、數(shù)據(jù)處理與科學(xué)計(jì)算等不同領(lǐng)域的內(nèi)容。全書共12章,包括基礎(chǔ)篇、進(jìn)階篇、提高篇和實(shí)戰(zhàn)篇4個(gè)部分。基礎(chǔ)篇包括第1、2、3章,分別為Python基礎(chǔ)及網(wǎng)絡(luò)爬蟲、靜態(tài)網(wǎng)頁抓取、數(shù)據(jù)存儲(chǔ)。進(jìn)階篇包括第4、5、6章,分別為JavaScript與動(dòng)態(tài)內(nèi)容、模擬登錄與驗(yàn)證碼、爬蟲數(shù)據(jù)的分析與處理。提高篇包括第7、8、9章,分別為爬蟲的靈活性和多樣性、Selenium模擬瀏覽器與網(wǎng)站測(cè)試、爬蟲框架Scrapy與反爬蟲。實(shí)戰(zhàn)篇提供了3個(gè)實(shí)戰(zhàn)項(xiàng)目供讀者學(xué)習(xí)參考。本書內(nèi)容覆蓋網(wǎng)絡(luò)數(shù)據(jù)抓取與爬蟲編程中的主要知識(shí)和前沿技術(shù)。同時(shí),本書在重視理論基礎(chǔ)的前提下,從實(shí)用性和豐富度出發(fā),結(jié)合實(shí)例演示爬蟲程序編寫的核心流程,將理論與實(shí)踐結(jié)合,力求提高讀者的網(wǎng)絡(luò)爬蟲實(shí)操技能。本書可作為高等院校數(shù)據(jù)科學(xué)、統(tǒng)計(jì)學(xué)、計(jì)算機(jī)科學(xué)、軟件工程等相關(guān)專業(yè)課程的教材,也可作為Python語言初學(xué)者、網(wǎng)絡(luò)爬蟲技術(shù)愛好者的參考書。

作者簡(jiǎn)介

  呂云翔 比利時(shí)布魯塞爾自由大學(xué)應(yīng)用科學(xué)學(xué)院應(yīng)用信息技術(shù)專業(yè)碩士、經(jīng)濟(jì)學(xué)院工商管理專業(yè)碩士,北京航空航天大學(xué)軟件學(xué)院副教授,碩士生導(dǎo)師。主要研究方向:軟件工程、人工智能、大數(shù)據(jù)。具有多年的軟件開發(fā)、項(xiàng)目管理、計(jì)算機(jī)教學(xué)經(jīng)驗(yàn),對(duì)IT行業(yè)具有較全面的認(rèn)識(shí),編著教材多部。曾獲得北航教學(xué)成果一等獎(jiǎng)、二等獎(jiǎng)(教材)、三等獎(jiǎng)(教材)。

圖書目錄

目 錄
基礎(chǔ)篇
第 1章 Python基礎(chǔ)及網(wǎng)絡(luò)爬蟲 1
1.1 了解Python語言 1
1.1.1 Python是什么 1
1.1.2 Python的應(yīng)用現(xiàn)狀 2
1.2 配置安裝Python開發(fā)環(huán)境 3
1.2.1 在Windows上安裝 3
1.2.2 在Ubuntu和macOS上安裝 3
1.2.3 IDE的使用:以PyCharm為例 4
1.2.4 Jupyter Notebook簡(jiǎn)介 6
1.3 Python基礎(chǔ)知識(shí) 7
1.3.1 “Hello,World!”與數(shù)據(jù)類型 7
1.3.2 邏輯語句 12
1.3.3 Python中的函數(shù)與類 14
1.3.4 更深入了解Python 16
1.4 互聯(lián)網(wǎng)、HTTP與HTML 16
1.4.1 互聯(lián)網(wǎng)與HTTP 16
1.4.2 HTML 17
1.5 Hello Spider 19
1.5.1 編寫第 一個(gè)爬蟲程序 19
1.5.2 對(duì)爬蟲的思考 21
1.6 分析網(wǎng)站 22
1.6.1 robots.txt與Sitemap簡(jiǎn)介 22
1.6.2 網(wǎng)站技術(shù)分析 24
1.6.3 網(wǎng)站所有者信息分析 25
1.6.4 使用開發(fā)者工具檢查目標(biāo)網(wǎng)頁 26
章節(jié)實(shí)訓(xùn):Python環(huán)境的配置與爬蟲的運(yùn)行 28
思考與練習(xí) 28
第 2章 靜態(tài)網(wǎng)頁抓取 29
2.1 從抓取開始 29
2.2 正則表達(dá)式 30
2.2.1 什么是正則表達(dá)式 30
2.2.2 正則表達(dá)式的簡(jiǎn)單使用 31
2.3 BeautifulSoup爬蟲 33
2.3.1 安裝BeautifulSoup 33
2.3.2 BeautifulSoup的基本用法 35
2.4 XPath與lxml 37
2.4.1 XPath 37
2.4.2 lxml與XPath的使用 38
2.5 遍歷頁面 40
2.5.1 抓取下一個(gè)頁面 40
2.5.2 完成爬蟲 41
2.6 使用API 42
2.6.1 API簡(jiǎn)介 42
2.6.2 API使用示例 44
章節(jié)實(shí)訓(xùn):?jiǎn)袅▎袅ㄖ辈ラg信息抓取練習(xí) 47
思考與練習(xí) 47
第3章 數(shù)據(jù)存儲(chǔ) 48
3.1 Python中的文件 48
3.1.1 Python中的文件讀寫 48
3.1.2 對(duì)象序列化 50
3.2 Python中的字符串 50
3.3 Python中的圖片 51
3.3.1 PIL與Pillow模塊 51
3.3.2 Python與OpenCV簡(jiǎn)介 53
3.4 CSV文件 54
3.4.1 CSV簡(jiǎn)介 54
3.4.2 CSV的讀寫 54
3.5 數(shù)據(jù)庫的使用 56
3.5.1 MySQL的使用 56
3.5.2 SQLite 3的使用 57
3.5.3 SQLAlchemy的使用 58
3.5.4 Redis的使用 59
3.5.5 MongoDB的使用 60
3.6 其他類型的文檔 61
章節(jié)實(shí)訓(xùn):使用Python 3讀寫SQLite 3數(shù)據(jù)庫 63
思考與練習(xí) 64
進(jìn)階篇
第4章 JavaScript與動(dòng)態(tài)內(nèi)容 65
4.1 JavaScript與AJAX技術(shù) 65
4.1.1 JavaScript語言 65
4.1.2 AJAX 68
4.2 抓取AJAX數(shù)據(jù) 69
4.2.1 分析數(shù)據(jù) 69
4.2.2 數(shù)據(jù)提取 72
4.3 抓取動(dòng)態(tài)內(nèi)容 76
4.3.1 動(dòng)態(tài)渲染頁面 76
4.3.2 使用Selenium 76
4.3.3 PyV8與Splash 81
章節(jié)實(shí)訓(xùn):抓取人民郵電出版社熱銷圖書信息 83
思考與練習(xí) 84
第5章 模擬登錄與驗(yàn)證碼 85
5.1 表單 85
5.1.1 表單與POST 85
5.1.2 POST發(fā)送表單數(shù)據(jù) 87
5.2 Cookie 89
5.2.1 Cookie簡(jiǎn)介 89
5.2.2 在Python中Cookie的使用 90
5.3 模擬登錄網(wǎng)站 91
5.3.1 分析網(wǎng)站 91
5.3.2 Cookie方法的模擬登錄 92
5.4 驗(yàn)證碼 94
5.4.1 圖片驗(yàn)證碼 94
5.4.2 滑動(dòng)驗(yàn)證 96
章節(jié)實(shí)訓(xùn):通過Selenium模擬登錄Gitee并保存Cookie 99
思考與練習(xí) 99
第6章 爬蟲數(shù)據(jù)的分析與處理 100
6.1 Python與文本分析 100
6.1.1 文本分析簡(jiǎn)介 100
6.1.2 jieba與SnowNLP 101
6.1.3 NLTK 104
6.1.4 文本分類與聚類 106
6.2 數(shù)據(jù)處理與科學(xué)計(jì)算 108
6.2.1 從MATLAB到Python 108
6.2.2 NumPy 108
6.2.3 Pandas 112
6.2.4 Matplotlib 116
6.2.5 Scipy與SymPy 118
章節(jié)實(shí)訓(xùn):美國新冠疫情每日新增人數(shù)的可視化 119
思考與練習(xí) 119
提高篇
第7章 爬蟲的靈活性和多樣性 120
7.1 爬蟲的靈活性——以微信數(shù)據(jù)抓取為例 120
7.1.1 用Selenium抓取網(wǎng)頁版微信數(shù)據(jù) 120
7.1.2 基于Python的微信API工具 123
7.2 爬蟲的多樣性 125
7.2.1 在BeautifulSoup和XPath之外 125
7.2.2 在線爬蟲應(yīng)用平臺(tái) 127
7.2.3 使用urllib 129
7.3 爬蟲的部署和管理 134
7.3.1 使用服務(wù)器部署爬蟲 134
7.3.2 本地爬蟲程序的編寫 137
7.3.3 爬蟲的部署 140
7.3.4 實(shí)時(shí)查看運(yùn)行結(jié)果 141
7.3.5 使用框架管理爬蟲 142
章節(jié)實(shí)訓(xùn):基于PyQuery抓取菜鳥教程 144
思考與練習(xí) 145
第8章 Selenium模擬瀏覽器與網(wǎng)站測(cè)試 146
8.1 測(cè)試 146
8.1.1 什么是測(cè)試 146
8.1.2 什么是TDD 146
8.2 Python的單元測(cè)試 147
8.2.1 使用unittest 147
8.2.2 其他方法 149
8.3 使用Python網(wǎng)絡(luò)爬蟲測(cè)試網(wǎng)站 150
8.4 使用Selenium測(cè)試 152
8.4.1 使用Selenium測(cè)試常用的網(wǎng)站交互 152
8.4.2 結(jié)合Selenium進(jìn)行單元測(cè)試 153
章節(jié)實(shí)訓(xùn):使用Selenium抓取百度搜索引擎中關(guān)于“爬蟲”的結(jié)果 154
思考與練習(xí) 155
第9章 爬蟲框架Scrapy與反爬蟲 156
9.1 爬蟲框架 156
9.1.1 Scrapy簡(jiǎn)介 156
9.1.2 安裝與學(xué)習(xí)Scrapy 157
9.1.3 Scrapy爬蟲編寫 159
9.1.4 其他爬蟲框架介紹 161
9.2 網(wǎng)站反爬蟲 162
9.2.1 反爬蟲策略簡(jiǎn)介 162
9.2.2 偽裝headers 163
9.2.3 代理IP的使用 165
9.2.4 控制訪問頻率 168
章節(jié)實(shí)訓(xùn):使用“反反爬蟲”策略抓取某日?qǐng)?bào)網(wǎng)頭版的標(biāo)題內(nèi)容 168
思考與練習(xí) 169
實(shí)戰(zhàn)篇
第 10章 實(shí)戰(zhàn):保存感興趣的圖片 170
10.1 豆瓣網(wǎng)分析與爬蟲設(shè)計(jì) 170
10.1.1 從需求出發(fā) 170
10.1.2 處理登錄問題 171
10.2 編寫爬蟲程序 173
10.2.1 爬蟲腳本 173
10.2.2 程序分析 176
10.2.3 運(yùn)行并查看結(jié)果 178
第 11章 實(shí)戰(zhàn):抓取二手房數(shù)據(jù)并繪制熱力圖 179
11.1 數(shù)據(jù)抓取 179
11.1.1 網(wǎng)頁分析 179
11.1.2 代碼編寫 181
11.1.3 運(yùn)行并查看結(jié)果 183
11.2 繪制熱力圖 184
第 12章 實(shí)戰(zhàn):北京大興國際機(jī)場(chǎng)航班出發(fā)時(shí)間數(shù)據(jù)抓取 189
12.1 程序設(shè)計(jì) 189
12.1.1 網(wǎng)頁分析 189
12.1.2 將數(shù)據(jù)保存到數(shù)據(jù)庫 190
12.2 爬蟲編寫 191
12.2.1 前置準(zhǔn)備 191
12.2.2 代碼編寫 192
12.2.3 運(yùn)行并查看結(jié)果 195
參考文獻(xiàn) 196

本目錄推薦

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