TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
Python網絡爬蟲技術手冊:基礎‧實戰‧強化(簡體書)
滿額折

Python網絡爬蟲技術手冊:基礎‧實戰‧強化(簡體書)

商品資訊

人民幣定價:128 元
定價
:NT$ 768 元
優惠價
87668
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:20 點
相關商品
商品簡介
名人/編輯推薦
目次

商品簡介

《Python網絡爬蟲技術手冊:基礎·實戰·強化》是“計算機科學與技術手冊系列”圖書之一,該系列圖書內容全面,以理論聯繫實際、能學到並做到為宗旨,以技術為核心,以案例為輔助,引領讀者全面學習基礎技術、代碼編寫方法和具體應用項目,旨在為想要進入相應領域或者已經在該領域深耕多年的技術人員提供新而全的技術性內容及案例。
本書是一本側重編程基礎+實踐的Python爬蟲圖書,從基礎、實戰、強化三個層次循序漸進地介紹了網絡爬蟲入門必備知識:基礎篇主要講解網絡爬蟲的基礎內容;實戰篇主要講解目前應用最廣的各類數據庫爬蟲相關技術和案例;強化篇結合數據庫、數據分析、可視化等進行大型項目綜合實戰練習。本書內容充實,給讀者提供了較為豐富全面的技術支持和案例強化,通過各種示例將學習與應用相結合,打造輕鬆學習、零壓力學習的環境,通過案例對所學知識進行綜合應用,通過開發實際項目將網絡爬蟲的各項技能應用到實際工作中,幫助讀者實現學以致用,快速掌握網絡爬蟲的各項技能。
本書提供豐富的資源,包含109個實例、13個實戰案例、2個應用強化項目,力求為讀者打造一本基礎+實戰+強化一體化的、精彩的Python網絡爬蟲圖書。
本書不僅適合初學者、數據采集相關技術人員、對數據感興趣的人員,而且適合從事其他崗位想掌握一定的數據采集能力的職場人員閱讀參考。

名人/編輯推薦

1.內容全面,案例豐富
2.視頻教學,圖文並茂
3.在線服務,紙電同步

從工業4.0到“十四五”規劃,我國信息時代正式踏上新的階梯,電子設備已經普及,在人們的日常生活中隨處可見。信息社會給人們帶來了極大的便利,信息捕獲、信息處理分析等在各個行業得到普遍應用,推動整個社會向前穩固發展。
計算機設備和信息數據的相互融合,對各個行業來說都是一次非常大的進步,已經滲入到工業、農業、商業、軍事等領域,同時其相關應用產業也得到一定發展。就目前來看,各類編程語言的發展、人工智能相關算法的應用、大數據時代的數據處理和分析都是計算機科學領域各大高校、各個企業在不斷攻關的難題,是挑戰也是機遇。因此,我們策劃編寫了“計算機科學與技術手冊系列”圖書,旨在為想要進入相應領域的初學者或者已經在該領域深耕多年的從業者提供新而全的技術性內容,以及豐富、典型的實戰案例。
現如今大數據已經滲透到每一個行業當中,成為重要的生產因素。由於人們不斷對海量數據的挖掘與運用,爬蟲工程師在互聯網數據公司中占據非常重要的地位。
可以製作爬蟲的編程語言有多種,其中最受歡迎的便是Python編程語言,該語言簡單、易學,並且支持多種第三方模塊,使得其應用範圍越來越廣。本書側重網絡爬蟲的編程基礎與實踐,為保證讀者學以致用,在實踐方面循序漸進地進行3個層次的篇章介紹,即基礎篇、實戰篇和強化篇。
本書內容
全書共分為31章,主要通過“基礎篇(16章)+實戰篇(13章)+強化篇(2章)”三大維度一體化的講解方式,具體的學習結構如下圖所示。
本書特色
1.突出重點、學以致用
書中每個知識點都結合了簡單、易懂的示例代碼以及非常詳細的注釋信息,力求讀者能夠快速理解所學知識,提高學習效率,縮短學習路徑。
實例代碼與運行結果
2.提升思維、綜合運用
本書以知識點綜合運用的方式,帶領讀者學習各種趣味性較強的爬蟲案例,讓讀者不斷提升編寫網絡爬蟲的思維,還可以快速提升對知識點的綜合運用能力,讓讀者能夠回顧以往所學的知識點,並結合新的知識點進行綜合應用。
3.綜合技術、實際項目
本書在強化篇中提供了兩個貼近生活應用的項目,力求通過實際應用使讀者更容易地掌握爬蟲技術與應對業務的需求。爬蟲項目都是根據實際開發經驗總結而來的,包含了在實際開發中所遇到的各種問題。項目結構清晰、擴展性強,讀者可根據個人需求進行擴展開發。
4.精彩欄目、貼心提示
本書根據實際學習的需要,設置了“注意”“說明”等許多貼心的小欄目,輔助讀者輕鬆理解所學知識,規避編程陷阱。
本書由明日科技的Python開發團隊策劃並組織編寫,主要編寫人員有李磊、王國輝、高春艷、馮春龍、李再天、王小科、賽奎春、申小琦、趙寧、張鑫、周佳星、楊柳、葛忠月、李春林、宋萬勇、張寶華、楊麗、劉媛媛、龐鳳、胡冬、梁英、譚暢、何平、李菁菁、依瑩瑩、宋磊等。在編寫本書的過程中,我們本著科學、嚴謹的態度,力求精益求精,但疏漏之處在所難免,敬請廣大讀者批評斧正。
感謝您閱讀本書,希望本書能成為您編程路上的領航者。
祝您讀書快樂!

編著者

目次

第1篇 基礎篇
第1章 爬蟲基礎
1.1 什麼是網絡爬蟲 2
1.2 網絡爬蟲的分類 3
1.3 網絡爬蟲的原理 3
1.4 HTTP基本原理 3
1.4.1 什麼是URL 3
1.4.2 HTTP協議 4
1.4.3 HTTP與Web服務器 4
1.4.4 瀏覽器中的請求和響應 5
1.5 網頁的基本結構 6
1.5.1 了解HTML 6
1.5.2 了解CSS 6
1.5.3 了解JavaScript 8

第2章 搭建網絡爬蟲開發環境
2.1 Anaconda的安裝 10
2.2 下載與安裝PyCharm 13
2.3 配置PyCharm 16
2.4 測試PyCharm 18

第3章 網絡請求urllib模塊
3.1 了解urllib 20
3.2 發送網絡請求 20
3.2.1 發送GET請求 21
實例3.1 演示常用的方法與屬性 21
3.2.2 發送POST請求 22
實例3.2 發送POST請求 22
3.2.3 請求超時 22
實例3.3 處理網絡超時 23
3.2.4 設置請求頭 23
實例3.4 設置請求頭 24
3.2.5 獲取與設置Cookie 25
實例3.5 模擬登錄 25
實例3.6 獲取Cookie 27
實例3.7 保存Cookie文件 27
實例3.8 獲取登錄後頁面中的信息 28
3.2.6 代理IP的設置 29
實例3.9 設置代理IP 29
3.3 處理請求異常 29
實例3.10 處理URLError異常 29
實例3.11 使用HTTPError類捕獲異常 30
實例3.12 雙重異常的捕獲 31
3.4 解析URL 31
3.4.1 URL的拆分(urlparse、urlsplit) 31
實例3.13 使用urlparse()方法拆分URL 32
實例3.14 使用urlsplit()方法拆分URL 32
3.4.2 URL的組合(urlunparse、urlunsplit) 33
實例3.15 使用urlunparse()方法組合URL 33
實例3.16 使用urlunsplit()方法組合URL 34
3.4.3 URL的連接(urljoin) 34
實例3.17 使用urljoin()方法連接URL 34
3.4.4 URL的編碼與解碼(urlencode、quote、unquote) 35
實例3.18 使用urlencode()方法編碼請求參數 35
實例3.19 使用quote()方法編碼字符串參數 35
實例3.20 使用unquote()方法解碼請求參數 36
3.4.5 URL的參數轉換 36
實例3.21 使用parse_qs()方法將參數轉換為字典類型 36
實例3.22 使用parse_qsl()方法將參數轉換為元組所組成的列表 36
3.5 綜合案例——爬取“百度熱搜” 37
3.5.1 分析數據 37
3.5.2 實現網絡爬蟲 37
3.6 實戰練習 39

第4章 網絡請求urllib3模塊
4.1 了解urllib3 40
4.2 發送網絡請求 41
4.2.1 發送GET請求 41
實例4.1 發送GET請求 41
實例4.2 發送多個請求 41
4.2.2 發送POST請求 42
實例4.3 發送POST請求 42
4.2.3 重試請求 43
實例4.4 重試請求 43
4.2.4 獲得響應內容 43
實例4.5 獲取響應頭信息 43
實例4.6 處理服務器返回的JSON信息 44
實例4.7 處理服務器返回二進制數據 44
4.2.5 設置請求頭 45
實例4.8 設置請求頭 45
4.2.6 設置超時 46
實例4.9 設置超時 46
4.2.7 設置代理IP 47
實例4.10 設置代理IP 47
4.3 上傳文件 47
實例4.11 上傳文本文件 47
實例4.12 上傳圖片文件 48
4.4 綜合案例——爬取必應壁紙 48
4.4.1 分析數據 48
4.4.2 實現網絡爬蟲 49
4.5 實戰練習 51

第5章 網絡請求requests模塊
5.1 基本請求方式 52
5.1.1 發送GET請求 53
實例5.1 發送GET請求不帶參數 53
5.1.2 設置編碼 53
實例5.2 獲取網頁源碼 53
5.1.3 二進制數據的爬取 54
實例5.3 下載百度logo圖片 54
5.1.4 發送GET(帶參數)請求 54
5.1.5 發送POST請求 55
實例5.4 發送POST請求 55
5.2 高級請求方式 56
5.2.1 設置請求頭 56
實例5.5 設置請求頭 56
5.2.2 Cookie的驗證 57
實例5.6 模擬豆瓣登錄 57
5.2.3 會話請求 58
實例5.7 會話請求 58
5.2.4 驗證請求 58
實例5.8 驗證請求 59
5.2.5 網絡超時與異常 59
實例5.9 網絡超時與異常 59
實例5.10 判斷網絡異常 60
5.2.6 文件上傳 60
實例5.11 上傳圖片文件 60
5.2.7 代理的應用 61
實例5.12 使用代理IP發送請求 61
5.3 綜合案例——爬取糗事百科(視頻) 62
5.3.1 分析數據 62
5.3.2 實現爬蟲 63
5.4 實戰練習 64

第6章 requests模塊的兩大擴展
6.1 安裝requests-cache模塊 65
6.2 爬蟲緩存的應用 66
6.3 多功能requests-html模塊 68
6.3.1 發送網絡請求 68
6.3.2 提取數據 70
實例6.1 爬取實時新聞 70
6.3.3 獲取動態渲染的數據 73
實例6.2 獲取動態渲染的數據 73
6.4 綜合案例——爬取百度天氣 75
6.4.1 分析數據 75
6.4.2 實現爬蟲 76
6.5 實戰練習 77

第7章 正則表達式解析
7.1 通過search()匹配字符串 78
7.1.1 匹配指定開頭的字符串 79
實例7.1 搜索第一個以“mr_”開頭的字符串 79
7.1.2 可選匹配字符串中的內容 79
實例7.2 可選匹配字符串中的內容 79
7.1.3 使用“\b”匹配字符串的邊界 80
實例7.3 使用“\b”匹配字符串的邊界 80
7.2 通過findall()匹配字符串 80
7.2.1 匹配所有以指定字符開頭的字符串 81
實例7.4 匹配所有以“mr_”開頭的字符串 81
7.2.2 貪婪匹配法 81
實例7.5 使用“.*”實現貪婪匹配字符串 81
7.2.3 非貪婪匹配法 82
實例7.6 使用“.*?”實現非貪婪匹配字符串 82
7.3 處理字符串 83
7.3.1 使用sub()方法替換字符串 83
實例7.7 使用sub()方法替換字符串 83
7.3.2 使用split()方法分割字符串 84
實例7.8 使用split()方法分割字符串 84
7.4 綜合案例——爬取QQ音樂熱歌榜 85
7.4.1 分析數據 85
7.4.2 實現爬蟲 85
7.5 實戰練習 86

第8章 lxml解析模塊
8.1 了解XPath 87
8.2 XPath的基本操作 88
8.2.1 HTML的解析 88
實例8.1 解析本地的HTML文件 88
實例8.2 解析字符串類型的HTML代碼 88
實例8.3 解析服務器返回的HTML代碼 89
8.2.2 獲取所有標簽 90
實例8.4 獲取HTML代碼的所有標簽 90
8.2.3 獲取子標簽 91
實例8.5 獲取一個標簽中的子標簽 91
實例8.6 獲取子孫標簽 92
8.2.4 獲取父標簽 92
實例8.7 獲取一個標簽的父標簽 92
8.2.5 獲取文本 93
實例8.8 獲取HTML代碼中的文本 93
8.2.6 屬性匹配 94
實例8.9 使用“[@...]”實現標簽屬性的匹配 94
實例8.10 屬性多值匹配 94
實例8.11 一個標簽中多個屬性的匹配 95
8.2.7 獲取屬性值 96
實例8.12 獲取屬性所對應的值 96
實例8.13 使用索引按序獲取屬性對應的值 97
8.2.8 使用標簽軸獲取標簽內容 98
實例8.14 使用標簽軸的方式獲取標簽內容 98
8.3 綜合案例——爬取豆瓣新書速遞 99
8.3.1 分析數據 99
8.3.2 實現爬蟲 99
8.4 實戰練習 100

第9章 BeautifulSoup解析模塊
9.1 BeautifulSoup的基礎應用 101
9.1.1 安裝BeautifulSoup 101
9.1.2 解析器的區別 102
9.1.3 解析HTML 103
實例9.1 解析HTML代碼 103
9.2 獲取標簽內容 103
9.2.1 獲取標簽對應的代碼 104
實例9.2 獲取標簽對應的代碼 104
9.2.2 獲取標簽屬性 105
實例9.3 獲取標簽屬性 105
9.2.3 獲取標簽內的文本 106
9.2.4 嵌套獲取標簽內容 106
實例9.4 嵌套獲取標簽內容 106
9.2.5 關聯獲取 107
實例9.5 獲取子標簽 107
實例9.6 獲取子孫標簽 108
實例9.7 獲取父標簽 109
實例9.8 獲取兄弟標簽 109
9.3 利用方法獲取內容 111
9.3.1 find_all()方法 111
實例9.9 find_all(name)通過標簽名稱獲取內容 111
實例9.10 find_all(attrs)通過指定屬性獲取內容 112
實例9.11 find_all(text)獲取標簽中的文本 112
9.3.2 find()方法 113
實例9.12 獲取第一個匹配的標簽內容 113
9.3.3 其他方法 114
9.4 CSS選擇器 114
實例9.13 使用CSS選擇器獲取標簽內容 115
9.5 綜合案例——爬取百度貼吧(熱議榜) 116
9.5.1 分析數據 116
9.5.2 實現爬蟲 116
9.6 實戰練習 117

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 668
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區