Python數(shù)據(jù)爬取技術(shù)與實(shí)戰(zhàn)手冊(cè)
定 價(jià):59.8 元
當(dāng)前圖書已被 5 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:郭卡,戴亮編著
- 出版時(shí)間:2018/1/1
- ISBN:9787113245221
- 出 版 社:中國(guó)鐵道出版社
- 中圖法分類:TP311.561-62
- 頁(yè)碼:304頁(yè)
- 紙張:膠版紙
- 版次:1
- 開(kāi)本:16K
本書介紹了如何使用Python編寫網(wǎng)絡(luò)爬蟲(chóng)批量采集互聯(lián)網(wǎng)數(shù)據(jù),如何處理與保存采集到的信息,以及如何從眾多紛亂的數(shù)據(jù)中提取到真正有用的信息。并介紹了幾種常用的數(shù)據(jù)可視化工具。
第1章 拍檔:網(wǎng)絡(luò)爬蟲(chóng)與Python語(yǔ)言
1.1 什么是網(wǎng)絡(luò)爬蟲(chóng) 1
1.1.1 網(wǎng)絡(luò)爬蟲(chóng)的定義 2
1.1.2 網(wǎng)絡(luò)爬蟲(chóng)的工作流程 2
1.1.3 網(wǎng)絡(luò)爬蟲(chóng)的分類 3
1.1.4 為什么選擇用Python編寫網(wǎng)絡(luò)爬蟲(chóng) 4
1.1.5 編寫爬蟲(chóng)的注意事項(xiàng) 4
1.2 Python環(huán)境配置 5
1.2.1 Python的安裝 5
1.2.2 Python第三方庫(kù)的安裝 6
【示例1-1】使用包管理器安裝科學(xué)計(jì)算庫(kù)numpy 6
【示例1-2】源代碼方式安裝xlrd庫(kù)(使用setup.py文件) 7
【示例1-3】源代碼方式安裝xlrd庫(kù)(使用whl文件) 8
1.2.3 Python開(kāi)發(fā)工具的選擇 8
【示例1-4】將文本編輯器配置成Python開(kāi)發(fā)工具(以Notepad++為例) 12
1.3 Python基本語(yǔ)法 13
1.3.1 Python書寫規(guī)則 13
1.3.2 Python基本數(shù)據(jù)類型 18
【示例1-5】以列表a = ['a','a','b','c','d','d','e']為例講解List的基本操作 21
【示例1-6】以列表a = [1,2,3,4,5,6,7,8]為例講解數(shù)據(jù)型列表的屬性分析 23
【示例1-7】以字典a為例,講解字典的基本操作 25
1.3.3 Python獨(dú)有數(shù)據(jù)生成方式:推導(dǎo)式 29
1.3.4 函數(shù) 30
【示例1-8】局部變量與全局變量重名的運(yùn)行結(jié)果與解決方案 31
1.3.5 條件與循環(huán) 34
1.3.6 類與對(duì)象 35
【示例1-9】請(qǐng)輸出學(xué)生信息中某學(xué)生的班級(jí)、姓名和總分?jǐn)?shù) 35
1.3.7 Python 2代碼轉(zhuǎn)為Python 3代碼 36
【示例1-10】以文件test.py為例,介紹Python 2代碼到Python 3代碼的轉(zhuǎn)化 37
第2章 應(yīng)知應(yīng)會(huì):網(wǎng)絡(luò)爬蟲(chóng)基本知識(shí)
2.1 網(wǎng)頁(yè)的構(gòu)成 38
2.1.1 HTML基本知識(shí) 39
2.1.2 網(wǎng)頁(yè)中各元素的排布 46
【示例2-1】以新浪博客文本為例,學(xué)習(xí)各類元素的排布規(guī)則 46
2.2 正則表達(dá)式 48
2.2.1 正則表達(dá)式簡(jiǎn)介 48
2.2.2 Python語(yǔ)言中的正則表達(dá)式 49
【示例2-2】正則表達(dá)式應(yīng)用中,當(dāng)匹配次數(shù)達(dá)到10萬(wàn)時(shí),預(yù)先編譯對(duì)正則表達(dá)式性能的提升 51
2.2.3 綜合實(shí)例:正則表達(dá)式的實(shí)際應(yīng)用——在二手房網(wǎng)站中提取有用信息 52
2.3 漢字編碼問(wèn)題 54
2.3.1 常見(jiàn)編碼簡(jiǎn)介 54
2.3.2 常用編程環(huán)境的默認(rèn)編碼 55
2.3.3 網(wǎng)頁(yè)編碼 56
2.3.4 編碼轉(zhuǎn)換 56
2.4 網(wǎng)絡(luò)爬蟲(chóng)的行為準(zhǔn)則 57
2.4.1 遵循Robots協(xié)議 57
2.4.2 網(wǎng)絡(luò)爬蟲(chóng)的合法性 59
第3章 靜態(tài)網(wǎng)頁(yè)爬取
3.1 Python常用網(wǎng)絡(luò)庫(kù) 61
3.1.1 urllib庫(kù) 62
【示例3-1】從眾多代理IP中選取可用的IP 63
【示例3-2】百度搜索“Python”url演示Parse模塊應(yīng)用 66
3.1.2 綜合實(shí)例:批量獲取高清壁紙 68
3.1.3 requests庫(kù) 71
【示例3-3】用requests實(shí)現(xiàn)豆瓣網(wǎng)站模擬登錄 72
3.1.4 綜合實(shí)例:爬取歷史天氣數(shù)據(jù)預(yù)測(cè)天氣變化 74
3.2 網(wǎng)頁(yè)解析工具 77
3.2.1 更易上手:BeautifulSoup 77
【示例3-4】解析HTML文檔(以豆瓣讀書《解憂雜貨店》為例) 78
3.2.2 更快速度:lxml 81
3.2.3 BeautifulSoup與lxml對(duì)比 82
【示例3-5】爬取豆瓣讀書中近5年出版的評(píng)分7分以上的漫畫 82
【示例3-6】BeautifulSoup和lxml解析同樣網(wǎng)頁(yè)速度測(cè)試(基于網(wǎng)易新聞頁(yè)) 85
3.2.4 綜合實(shí)例:在前程無(wú)憂中搜索并抓取不同編程語(yǔ)言崗位的平均收入 85
第4章 動(dòng)態(tài)網(wǎng)頁(yè)爬取
4.1 AJAX技術(shù) 89
4.1.1 獲取AJAX請(qǐng)求 90
4.1.2 綜合實(shí)例:抓取簡(jiǎn)書百萬(wàn)用戶個(gè)人主頁(yè) 91
4.2 Selenium操作瀏覽器 97
4.2.1 驅(qū)動(dòng)常規(guī)瀏覽器 97
4.2.2 驅(qū)動(dòng)無(wú)界面瀏覽器 100
4.2.3 綜合實(shí)例:模擬登錄新浪微博并短視頻 101
4.3 爬取移動(dòng)端數(shù)據(jù) 103 <