Python網絡爬蟲實例教程(視頻講解版)( 簡體 字) | |
作者:齊文光 | 類別:1. -> 程式設計 -> Python |
出版社:人民郵電出版社 | 3dWoo書號: 49657 詢問書籍請說出此書號! 有庫存 NT售價: 250 元 |
出版日:7/1/2018 | |
頁數:206 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115484659 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 網絡爬蟲概述 1
1.1 認識網絡爬蟲 1 1.1.1 網絡爬蟲的含義 1 1.1.2 網絡爬蟲的主要類型 2 1.1.3 簡單網絡爬蟲的架構 3 1.1.4 網絡爬蟲的應用場景 3 1.2 Python網絡爬蟲技術概況 4 1.2.1 Python中實現HTTP請求 4 1.2.2 Python中實現網頁解析 5 1.2.3 Python爬蟲框架 6 1.3 搭建開發環境 7 1.3.1 代碼運行環境 7 1.3.2 開發編輯器 8 1.4 本章小結及要求 11 第2章 爬蟲基礎 12 2.1 認識HTTP請求 12 2.1.1 HTTP請求的含義 12 2.1.2 HTTP請求信息 12 2.2 爬蟲基礎——Requests庫入門 15 2.2.1 Requests庫的安裝 15 2.2.2 Requests庫的請求方法 16 2.2.3 Requests庫的響應對象 17 2.2.4 響應狀態碼 17 2.2.5 定制請求頭部 18 2.2.6 重定向與超時 18 2.2.7 傳遞URL參數 19 2.3 爬蟲基礎——Urllib庫基礎 20 2.3.1 Urllib 庫簡介 20 2.3.2 發送GET請求 20 2.3.3 模擬瀏覽器發送GET 請求 21 2.3.4 POST發送一個請求 22 2.3.5 URL解析 23 2.4 本章小結及要求 24 第3章 網頁解析基礎 25 3.1 網頁解析概述 25 3.1.1 常用網頁解析工具 25 3.1.2 HTML源碼簡介 25 3.2 XPath語法基礎 27 3.2.1 Lxml庫的安裝 27 3.2.2 XPath語法基礎—— 通過路徑查找元素 28 3.2.3 通過屬性查找元素 30 3.2.4 提取屬性值 31 3.2.5 XPath的高級用法 31 3.3 抓取百度首頁實例 33 3.4 Beautiful Soup庫和正則表達式 37 3.4.1 Beautiful Soup簡介 38 3.4.2 Beautiful Soup基本用法 39 3.4.3 Beautiful Soup標準選擇器 40 3.4.4 正則表達式 41 3.5 本章小結及要求 45 第4章 基礎爬蟲實例 46 4.1 Q房網爬蟲實例 46 4.1.1 網站頁面分析 46 4.1.2 編寫Q房網二手房房源爬蟲 代碼 47 4.1.3 保存爬取到的信息 50 4.2 多層頁面的爬取 51 4.2.1 爬取詳情頁面分析 51 4.2.2 編寫爬取詳情頁面的代碼 52 4.3 下載房源圖片和實現多線程 爬蟲 55 4.3.1 下載房源圖片 55 4.3.2 實現簡單多線程爬蟲 56 4.4 本章小結及要求 59 第5章 Requests模擬登錄 60 5.1 使用Cookies登錄網站 60 5.1.1 網站的保持登錄機制 60 5.1.2 登錄豆瓣網站 61 5.2 模擬登錄網站 63 5.2.1 豆瓣網站的登錄分析 63 5.2.2 Requests會話對象 66 5.2.3 編寫Requests登錄豆瓣 網站的代碼 67 5.3 驗證碼的處理 68 5.3.1 帶驗證碼的網站登錄分析 68 5.3.2 驗證碼的識別和處理 70 5.3.3 編寫帶驗證碼的豆瓣網站 登錄代碼 71 5.4 本章小結及要求 73 第6章 認識和應對反爬蟲 74 6.1 常用的網站反爬蟲策略及應對 措施 74 6.1.1 常用的網站反爬蟲策略 74 6.1.2 應對網站反爬蟲的措施 75 6.2 使用IP代理的方法 76 6.2.1 Requests中使用代理IP 76 6.2.2 獲取免費代理IP 77 6.3 使用IP代理爬取微信文章 78 6.3.1 分析微信文章的搜索頁面 及其URL的構造特點 78 6.3.2 編寫爬蟲代碼 80 6.4 本章小結及要求 82 第7章 動態網頁的抓取 84 7.1 動態網頁及其爬取方法 84 7.1.1 動態網頁的含義 84 7.1.2 動態網頁的爬取辦法 85 7.2 動態網頁的爬取技巧 86 7.2.1 鏈家經紀人頁面分析 86 7.2.2 鏈家經紀人爬蟲實現 88 7.3 Selenium庫的安裝與使用 90 7.3.1 Selenium庫的安裝 90 7.3.2 chromedriver的安裝和使用 91 7.3.3 Selenium的簡單使用 92 7.4 爬取新浪微博網站 95 7.4.1 新浪微博網站爬取分析 95 7.4.2 新浪微博網站爬蟲實現 95 7.4.3 爬蟲的簡單去重 98 7.4.4 使用Chrome瀏覽器的 headless模式 100 7.5 本章小結及要求 101 第8章 動態網頁與應對反爬蟲 綜合實例 102 8.1 拉勾網網站分析 102 8.1.1 拉勾網網站頁面初步分析 102 8.1.2 解析json數據和招聘崗位 詳情頁分析 105 8.2 拉勾網爬蟲實現 107 8.2.1 拉勾網爬蟲的初步實現 107 8.2.2 拉勾網爬蟲的進一步 完善 109 8.3 探索拉勾網反爬蟲機制 110 8.4 本章小結及要求 113 第9章 Scrapy爬蟲框架基礎 114 9.1 Scrapy爬蟲框架簡介與安裝 114 9.1.1 Scrapy爬蟲框架簡介 114 9.1.2 Scrapy爬蟲框架的安裝 114 9.2 Scrapy目錄結構和簡單爬蟲 實例 116 9.2.1 Scrapy目錄結構 116 9.2.2 百度爬蟲實現 119 9.2.3 Scrapy選擇器 120 9.3 Scrapy命令行工具、選擇器、 數據容器 122 9.3.1 Scrapy常用命令行工具 122 9.3.2 Scrapy選擇器高級應用 124 9.3.3 Scrapy數據容器 125 9.4 本章小結及要求 126 第10章 BasicSpider類和 圖片下載 127 10.1 BasicSpider類 127 10.1.1 Scrapy的爬蟲類和模板 127 10.1.2 BasicSpider類簡介 128 10.2 爬取我愛我家二手房房源 數據 129 10.2.1 我愛我家網站分析 129 10.2.2 我愛我家爬蟲項目實現 131 10.2.3 數據的快捷輸出 133 10.3 圖片下載和翻頁的另一種 方法 134 10.3.1 Scrapy圖片下載簡介 134 10.3.2 我愛我家房源圖片下載 134 10.3.3 翻頁的另一種方法 135 10.4 本章小結及要求 137 第11章 CrawlSpider類和Scrapy 框架概覽 138 11.1 CrawlSpider類簡介 138 11.2 房天下二手房房源爬蟲 139 11.2.1 房天下網站分析 139 11.2.2 房天下二手房房源爬蟲 實現 140 11.3 Scrapy架構 143 11.3.1 Scrapy架構概覽 143 11.3.2 Scrapy中的數據流 144 11.4 本章小結及要求 145 第12章 Scrapy應對反爬蟲 策略 146 12.1 常用的反爬蟲設置 146 12.2 下載器中間件 148 12.2.1 下載器中間件簡介 148 12.2.2 激活下載器中間件 149 12.2.3 編寫下載器中間件 150 12.3 設置隨機用戶代理和IP代理 150 12.3.1 設置隨機用戶代理 150 12.3.2 設置隨機IP代理 152 12.4 本章小結及要求 153 第13章 登錄網站和提交數據 154 13.1 Cookies登錄網站的高級技巧 154 13.1.1 Request對象 154 13.1.2 利用Cookies登錄網站的 技巧 155 13.2 使用FormRequest向網站提交 數據 157 13.2.1 FormRequest類 157 13.2.2 爬取Q房網二手房房源 158 13.3 Scrapy登錄網站的高級技巧 159 13.3.1 FormRequest.from_response() 方法 159 13.3.2 利用Scrapy登錄網站的 技巧 160 13.4 本章小結及要求 161 第14章 存儲數據到數據庫 162 14.1 MongoDB的安裝與使用 162 14.1.1 Scrapy存儲數據與 MongoDB簡介 162 14.1.2 MongoDB的安裝 162 14.1.3 MongoDB的配置與啟動 163 14.1.4 MongoDB的可視化管理 164 14.2 爬取鏈家經紀人成交數據 165 14.2.1 鏈家移動頁面分析 165 14.2.2 定義Items、編寫spider 168 14.3 設置鏈家網爬蟲pipeline 171 14.3.1 在Python中操作 MongoDB 171 14.3.2 配置pipeline 174 14.3.3 在settings中啟用pipeline 175 14.4 存儲數據到MySQL 175 14.4.1 使用pymysql操作MySQL 數據庫 175 14.4.2 把鏈家經紀人成交數據存儲 到MySQL數據庫 176 14.5 本章小結及要求 177 第15章 分布式爬蟲與爬蟲部署 178 15.1 分布式爬蟲原理與Redis的 安裝 178 15.1.1 Scrapy分布式爬蟲原理 178 15.1.2 Redis的安裝 179 15.2 scrapy_redis實現分布式爬蟲 181 15.2.1 scrapy_redis庫 181 15.2.2 分布式爬蟲的部署和存儲 182 15.3 使用Scrapyd部署爬蟲 183 15.3.1 Scrapyd簡介和安裝 183 15.3.2 使用scrapyd-client部署 爬蟲 185 15.4 Scrapy爬蟲去重 187 15.4.1 Scrapy去重方案 187 15.4.2 Bloom Filter過濾 188 15.5 本章小結及要求 189 第16章 項目實戰——知乎用戶 爬蟲及數據分析 190 16.1 知乎用戶爬蟲——知乎網站 分析 190 16.1.1 知乎網站初步分析 190 16.1.2 知乎網站進一步分析 192 16.2 知乎爬蟲的實現 194 16.2.1 編寫知乎爬蟲代碼 194 16.2.2 使用MongoDB和scrapy_redis 搭建分布式爬蟲 196 16.3 爬蟲數據分析 197 16.3.1 爬蟲數據分析工具 197 16.3.2 知乎用戶數據加載 199 16.3.3 爬蟲數據簡單分析 200 16.4 本章小結及要求 206 本書主要內容包括:網絡爬蟲概述、 requests庫入門、xapth語法詳解、認識和應對反爬蟲、模擬登錄和驗證碼的處理、動態頁面的分析方法、scrapy框架基礎、 應對反爬蟲策略、scrapy數據存儲、提交數據和保持登錄、crawlspider模板、圖片下載和文件下載、分布式爬蟲、增量式爬蟲、
|