內容簡介
本書以案例帶動知識點的講解,將Python爬蟲知識點分解到各個不同的案例,每個案例各有側重點。同時展示實際項目的設計思想和設計理念,使讀者可以舉一反三。
圖書目錄
第1章Python基礎知識
1.1Python語言簡介
1.2Python語法基礎
1.2.1Python數據類型
1.2.2序列數據結構
1.2.3Python控制語句
1.2.4Python函式與模組
1.3Python面向對象設計
1.3.1定義和使用類
1.3.2構造函式__init__
1.3.3析構函式
1.3.4實例屬性和類屬性
1.3.5私有成員與公有成員
1.3.6方法
1.3.7類的繼承
1.3.8多態
1.4Python 圖形界面設計
1.4.1創建Windows視窗
1.4.2幾何布局管理器
1.4.3Tkinter 組件
1.4.4Python事件處理
1.5Python檔案的使用
1.5.1打開(建立)檔案
1.5.2讀取文本檔案
1.5.3寫文本檔案
1.5.4檔案的關閉
1.5.5操作Excel文檔
1.6Python的第三方庫
第2章HTML基礎知識和Python文本處理
2.1HTML基礎
2.1.1什麼是HTML
2.1.2HTML的歷史
2.2HTML 4基礎和HTML 5新特性
2.2.1HTML 4基礎知識
2.2.2HTML 4基本標籤
2.2.3HTML 5的新特性
2.2.4在瀏覽器中查看HTML原始碼
2.3CSS語法基礎
2.3.1CSS基本語句
2.3.2在HTML文檔中套用CSS樣式
2.3.3CSS 選擇器
2.4Python文本處理
2.4.1字元串基本處理
2.4.2正則表達式
2.4.3正則表達式語法
2.4.4re模組
2.4.5正則表達式的實際套用案例
2.5XPath
2.5.1lxml庫安裝
2.5.2XPath語法
2.5.3在Python中使用XPath
第3章網路通信基礎知識
3.1網路協定
3.1.1網際網路TCP/IP協定
3.1.2IP協定和連線埠
3.1.3TCP和UDP協定
3.1.4HTTP和HTTPS協定
3.1.5HTTP基本原理與機制
3.1.6使用Fiddler抓包驗證請求信息和回響信息
3.2Socket編程
3.2.1Socket的概念
3.2.2Socket提供的函式方法
3.2.3TCP協定編程
第4章小試牛刀——下載網站圖片
4.1HTTP下載網站圖片功能介紹
4.2程式設計的思路
4.3關鍵技術
4.3.1urllib庫簡介
4.3.2urllib庫的基本使用
4.3.3圖片檔案下載到本地
4.4程式設計的步驟
第5章調用百度API獲取數據——小小翻譯器
5.1小小翻譯器功能介紹
5.2程式設計的思路
5.3關鍵技術
5.3.1urllib庫的高級使用
5.3.2使用User Agent隱藏身份
5.3.3JSON使用
5.4程式設計的步驟
5.4.1設計界面
5.4.2使用百度翻譯開放平台API
5.5API調用拓展——爬取天氣預報信息
第6章動態網頁爬蟲套用——抓取百度圖片
6.1程式功能介紹
6.2程式設計的思路
6.3關鍵技術
6.3.1Ajax動態網頁
6.3.2BeautifulSoup庫概述
6.3.3BeautifulSoup庫操作解析HTML文檔樹
6.3.4requests庫的使用
6.3.5Ajax動態網頁爬取
6.4程式設計的步驟
6.4.1分析網頁原始碼和網頁結構
6.4.2設計代碼
6.5動態網頁爬蟲拓展——爬取今日頭條新聞
6.5.1找到JavaScript請求的數據接口
6.5.2分析JSON數據
6.5.3請求和解析數據接口
第7章Selenium操作瀏覽器套用——模擬登錄豆瓣網站
7.1模擬登錄程式功能介紹
7.2程式設計的思路
7.3關鍵技術
7.3.1安裝Selenium庫
7.3.2Selenium詳細用法
7.3.3Selenium套用實例
7.4程式設計的步驟
7.4.1Selenium定位iframe(多層框架)
7.4.2模擬登錄豆瓣網站
7.5基於Cookie繞過驗證碼實現自動登錄
7.5.1為什麼要使用Cookie
7.5.2查看Cookie
7.5.3使用Cookie繞過百度驗證碼自動登錄賬戶
7.6Selenium實現Ajax動態載入抓取今日頭條新聞
7.6.1Selenium處理滾動條
7.6.2Selenium 動態載入抓取今日頭條新聞
7.7Selenium實現動態載入抓取新浪國內新聞
第8章微信網頁版協定API套用——微信機器人
8.1微信網頁版機器人功能介紹
8.2微信網頁版機器人設計思路
8.2.1分析微信網頁版API
8.2.2API匯總
8.2.3其他說明
8.3程式設計步驟
8.3.1微信網頁版運行流程
8.3.2程式目錄
8.3.3微信網頁版運行代碼實現
8.4微信網頁版機器人擴展功能
8.4.1自動回復
8.4.2群發訊息、定時傳送訊息、好友狀態檢測
8.4.3自動邀請好友加入群聊
8.5微信庫itchat實現微信聊天機器人
8.5.1安裝itchat
8.5.2itchat的登錄微信
8.5.3itchat的訊息類型
8.5.4itchat回復訊息
8.5.5itchat獲取賬號
8.5.6itchat的一些簡單套用
8.5.7Python調用圖靈機器人API實現簡單的人機互動
8.5.8程式設計的步驟
8.5.9開發訊息同步機器人
第9章爬蟲套用——校園網搜尋引擎
9.1校園網搜尋引擎功能分析
9.2校園網搜尋引擎系統設計
9.3關鍵技術
9.3.1中文分詞
9.3.2安裝和使用jieba
9.3.3jieba添加自定義詞典
9.3.4文本分類的關鍵字提取
9.3.5deque(雙向佇列)
9.4程式設計的步驟
9.4.1信息採集模組——網路爬蟲實現
9.4.2索引模組——建立倒排詞表
9.4.3網頁排名和搜尋模組
第10章SQLite資料庫存儲——大河報紙媒爬蟲
10.1大河報紙媒爬蟲功能介紹
10.2大河報紙媒爬蟲設計思路
10.3關鍵技術
10.3.1訪問SQLite資料庫的步驟
10.3.2創建資料庫和表
10.3.3資料庫的插入、更新和刪除操作
10.3.4資料庫表的查詢操作
10.3.5資料庫使用實例——學生通訊錄
10.3.6requestshtml庫
10.4程式設計步驟
10.4.1獲取網頁
10.4.2數據入庫
第11章MySQL資料庫存儲——微博採集爬蟲
11.1微博採集爬蟲功能介紹
11.2微博採集爬蟲設計思路
11.3關鍵技術
11.3.1查看Cookie
11.3.2模擬登錄實例
11.3.3使用Python操作MySQL資料庫
11.3.4Base64加密
11.4程式設計步驟
11.4.1模擬登錄
11.4.2獲取網頁
11.4.3數據入庫
第12章Scrapy框架爬蟲
12.1Scrapy框架簡介與安裝
12.1.1Scrapy框架簡介
12.1.2Scrapy安裝
12.2個Scrapy爬蟲
12.2.1項目需求
12.2.2創建項目
12.2.3分析頁面
12.2.4定義數據類
12.2.5實現爬蟲
12.2.6配置爬蟲
12.2.7運行爬蟲
12.3Spider開發流程
12.3.1繼承scrapy.Spider
12.3.2為spider起名字
12.3.3設定起始爬取點
12.3.4實現頁面解析函式
12.4Scrapy選擇器
12.4.1Selector類
12.4.2Response內置Selector
12.4.3使用CSS選擇器
12.4.4爬取商品信息
12.5Scrapy數據容器
12.5.1Item和Field
12.5.2Item擴展
12.5.3爬取百度貼吧信息
12.6Scrapy常用命令行工具
12.6.1全局命令
12.6.2項目命令
12.7Scrapy數據處理
12.7.1實現Item Pipeline
12.7.2Item Pipeline舉例
12.7.3啟用Item Pipeline
12.8爬取檔案和圖片
12.8.1FilesPipeline
12.8.2FilesPipeline實例
12.8.3ImagePipeline
12.8.4爬取百度圖片
12.9Scrapy模擬登錄
12.9.1模擬登錄分析
12.9.2代碼實現
第13章詞雲實戰——爬取豆瓣影評生成詞雲
13.1功能介紹
13.2程式設計的思路
13.3關鍵技術
13.3.1安裝WordCloud詞雲
13.3.2使用WordCloud詞雲
13.4程式設計的步驟
參考文獻
作者簡介
主編 21世紀高等學校規劃教材 《Visual Basic.NET程式設計基礎與套用》2009-2 中國電力出版社
主編 《VB.NET程式設計教程》2012-12 中國水利水電出版社
主編《Visual C#.NET基礎與套用教程》 2014-05 清華大學出版社
主編《Flash AS動畫基礎與遊戲設計》 2015-01 清華大學出版社
主編《Python程式設計》 2017-08 清華大學出版社
主編《C/C 程式設計教程——面向過程分冊》2017-09 電子工業出版社 (國家十二五規劃教材)