注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Python爬蟲(chóng)實(shí)戰(zhàn)基礎(chǔ)

Python爬蟲(chóng)實(shí)戰(zhàn)基礎(chǔ)

Python爬蟲(chóng)實(shí)戰(zhàn)基礎(chǔ)

定 價(jià):¥109.00

作 者: 李科均
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787302626565 出版時(shí)間: 2023-06-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

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

  本書(shū)介紹Python網(wǎng)絡(luò)爬蟲(chóng)開(kāi)發(fā)從業(yè)者應(yīng)掌握的基礎(chǔ)技能。本書(shū)以網(wǎng)絡(luò)爬蟲(chóng)為核心,涉及大大小小數(shù)十個(gè)能力體系。本書(shū)的前半部分介紹爬蟲(chóng)開(kāi)發(fā)的基礎(chǔ)知識(shí),包括爬蟲(chóng)開(kāi)發(fā) 的環(huán)境搭建方法、開(kāi)發(fā)中常用工具的使用方法和技巧、網(wǎng)頁(yè)的構(gòu)成原理和網(wǎng)頁(yè)信息提取的方法、常用數(shù)據(jù)庫(kù)的使用方法和應(yīng)用場(chǎng)景,如通過(guò)Redis內(nèi)置的布隆過(guò)濾器實(shí)現(xiàn)大規(guī)模URL地址的去重任務(wù)。本書(shū)的后半部分主要講解網(wǎng)絡(luò)爬蟲(chóng)開(kāi)發(fā)所需的必要能力,包括網(wǎng)絡(luò)通信的底層原理、背后涉及的互聯(lián)網(wǎng)協(xié)議標(biāo)準(zhǔn)及如何對(duì)這些協(xié)議進(jìn)行分析并加以利用,使用Docker部署網(wǎng)絡(luò)爬蟲(chóng)所需的環(huán)境和爬蟲(chóng)項(xiàng)目的打包部署,使用網(wǎng)絡(luò)爬蟲(chóng)的核心請(qǐng)求庫(kù)實(shí)現(xiàn)與服務(wù)器端和客戶端的通信和交互,使用自動(dòng)化神器Selenium對(duì)復(fù)雜的爬蟲(chóng)需求進(jìn)行快速實(shí)現(xiàn),以及網(wǎng)絡(luò)爬蟲(chóng)的多任務(wù)開(kāi)發(fā),重點(diǎn)是通過(guò)多線程和多進(jìn)程來(lái)提高爬蟲(chóng)效率。本書(shū)面向準(zhǔn)備從事或正在從事網(wǎng)絡(luò)爬蟲(chóng)開(kāi)發(fā)的從業(yè)者以及對(duì)網(wǎng)絡(luò)爬蟲(chóng)有濃厚興趣的愛(ài)好者。

作者簡(jiǎn)介

暫缺《Python爬蟲(chóng)實(shí)戰(zhàn)基礎(chǔ)》作者簡(jiǎn)介

圖書(shū)目錄

第1章基礎(chǔ)開(kāi)發(fā)環(huán)境
1.1Docker環(huán)境的搭建
1.1.1安裝Docker
1.1.2用Docker安裝MySQL
1.1.3用Docker安裝Redis
1.1.4用Docker安裝MongoDB
1.1.5用Docker安裝Selenium Grid
1.2Python的開(kāi)發(fā)環(huán)境
1.2.1Python的優(yōu)點(diǎn)、缺點(diǎn)
1.2.2Python解釋器
1.2.3Python IDE
1.3JavaScript的運(yùn)行環(huán)境
1.4輔助工具的安裝
1.4.1安裝Git
1.4.2安裝ADB驅(qū)動(dòng)
1.4.3安裝Fiddler
1.4.4安裝Postman
1.4.5XPath測(cè)試插件
第2章HTML頁(yè)面的信息提取
2.1HTML頁(yè)面解析概述
2.1.1HTML頁(yè)面的構(gòu)成原理
2.1.2Python提取HTML頁(yè)面信息的方式
2.2XPath提取HTML頁(yè)面信息
2.2.1XPath基礎(chǔ)
2.2.2XPath教程
2.2.3XPath技巧
2.3正則表達(dá)式
2.3.1基本語(yǔ)法
2.3.2表達(dá)式全集
2.3.3表達(dá)式字符組、優(yōu)先權(quán)
2.3.4表達(dá)式的分組與引用
2.3.5Python re模塊
2.4案例
2.4.1正則校驗(yàn)公民身份號(hào)碼的合法性
2.4.2下載微信文章及其靜態(tài)資源
第3章日志模塊
3.1日志基礎(chǔ)
3.1.1應(yīng)用場(chǎng)景及重要性
3.1.2日志的使用
3.2四大組件之Logger(記錄器)
3.2.1Logger的作用
3.2.2Logger的屬性和方法
3.2.3Logger的常用配置方法
3.2.4案例: 為日志記錄器添加自定義過(guò)濾器
 
 
 
3.3四大組件之Handler(處理器)
3.3.1Handle的作用
3.3.2Handle的屬性和方法
3.3.3Handle的常用方法
3.3.4內(nèi)置Handler類(lèi)型及功能
3.3.5案例一: 將日志寫(xiě)入磁盤(pán)文件
3.3.6案例二: 將日志文件按時(shí)間分割
3.3.7案例三: 將日志文件按大小分割
3.3.8案例四: 給指定郵箱發(fā)送日志消息
3.3.9案例五: Web日志服務(wù)器的傳參、認(rèn)證和調(diào)用
3.4四大組件之Formatter(格式化器)
3.4.1Formatter的屬性和方法
3.4.2可選格式化字段
3.5四大組件之Filters(過(guò)濾器)
3.5.1Filters的屬性和方法
3.5.2自定義Filters
3.6LogRecord對(duì)象
3.6.1LogRecord的屬性和方法
3.6.2構(gòu)造LogRecord實(shí)例化對(duì)象
3.6.3案例: Web日志服務(wù)器恢復(fù)LogRecord對(duì)象
3.7日志的配置
3.7.1顯式配置
3.7.2通過(guò)fileConfig配置
3.7.3通過(guò)dictConfig配置
第4章數(shù)據(jù)庫(kù)操作
4.1通過(guò)ORM模型操作MySQL
4.1.1什么是ORM模型
4.1.2SQLAlchemy是什么
4.1.3SQLAlchemy基礎(chǔ)
4.1.4數(shù)據(jù)庫(kù)引擎配置
4.1.5創(chuàng)建會(huì)話
4.1.6創(chuàng)建聲明性類(lèi)
4.1.7定義數(shù)據(jù)列及類(lèi)型
4.1.8增、改、查、刪
4.1.9ORM事務(wù)操作
4.1.10常用關(guān)系表的創(chuàng)建
4.1.11關(guān)系表數(shù)據(jù)的插入
4.1.12連接查詢
4.1.13關(guān)系表數(shù)據(jù)的刪除
4.2MongoDB數(shù)據(jù)庫(kù)
4.2.1MongoDB基礎(chǔ) 
4.2.2MongoDB文檔的增、刪、改
4.2.3MongoDB文檔查詢
4.2.4MongoDB的聚合
4.2.5MongoDB索引操作
4.2.6MongoDB的復(fù)制
4.2.7MongoDB的備份與恢復(fù)
4.2.8Python與MongoDB交互
4.3Redis操作
4.3.1Redis基礎(chǔ)
4.3.2Python操作Redis的流程
4.3.3Python中常用的Redis命令
4.3.4Python中使用Redis去重
4.3.5Redis內(nèi)置布隆過(guò)濾器
4.3.6使用Redis作消息隊(duì)列
4.3.7打造Redis發(fā)布訂閱框架
第5章機(jī)制與協(xié)議
5.1TCP/IP協(xié)議簇
5.1.1互聯(lián)網(wǎng)協(xié)議套件
5.1.2TCP/IP協(xié)議簇的組成
5.1.3TCP/IP參考模型
5.2TCP與UDP協(xié)議
5.2.1socket通信
5.2.2UDP協(xié)議
5.2.3TCP協(xié)議
5.2.4TCP的三次握手
5.2.5TCP的四次揮手
5.2.6TCP長(zhǎng)連接
5.3HTTP與HTTPS協(xié)議
5.3.1HTTP協(xié)議的實(shí)現(xiàn)
5.3.2使用socket實(shí)現(xiàn)HTTP協(xié)議服務(wù)器
5.3.3HTTPS協(xié)議的實(shí)現(xiàn)
5.3.4關(guān)于TLS與SSL協(xié)議
5.3.5一次爬蟲(chóng)請(qǐng)求的過(guò)程
5.3.6HTTP響應(yīng)狀態(tài)碼
5.3.7HTTP請(qǐng)求頭與響應(yīng)頭
5.4WebSocket協(xié)議
5.4.1協(xié)議內(nèi)容
5.4.2Python連接WebSocket
5.4.3案例: 虛擬貨幣實(shí)時(shí)價(jià)格爬蟲(chóng)
5.5SMTP協(xié)議與IMAP協(xié)議
5.5.1SMTP協(xié)議
5.5.2IMAP協(xié)議
5.5.3Python使用SMTP關(guān)鍵接口
5.5.4Python使用IMAP關(guān)鍵接口
5.5.5案例一: 發(fā)送HTML格式的郵件
5.5.6案例二: 發(fā)送帶附件的郵件
5.5.7案例三: 發(fā)送顯示圖片的HTML格式的郵件
5.5.8案例四: 自動(dòng)讀取郵箱驗(yàn)證碼
5.6Robots協(xié)議
5.7安全與會(huì)話機(jī)制
5.7.1CSRF攻擊與保護(hù)
5.7.2CSRF驗(yàn)證過(guò)程
5.7.3Cookie機(jī)制
5.7.4會(huì)話
5.7.5Token與JWT
5.7.6案例: 獲取本地Chrome瀏覽器中的任意Cookie信息
第6章工具教程
6.1Fiddler高級(jí)抓包教程
6.1.1Fiddler的基礎(chǔ)功能
6.1.2抓取HTTPS請(qǐng)求
6.1.3Fiddler的過(guò)濾規(guī)則
6.1.4Fiddler斷點(diǎn)調(diào)試
6.1.5Fiddler手機(jī)抓包
6.1.6App的防抓包措施
6.1.7安卓系統(tǒng)模擬器抓包
6.1.8一鍵生成Python代碼
6.1.9自定義請(qǐng)求響應(yīng)規(guī)則
6.1.10響應(yīng)數(shù)據(jù)轉(zhuǎn)發(fā)腳本
6.1.11Fiddler腳本開(kāi)發(fā)
6.2Postman高級(jí)教程
6.2.1Postman的基礎(chǔ)
6.2.2設(shè)置Postman變量
6.2.3編寫(xiě)動(dòng)態(tài)變量邏輯
6.2.4Postman Cookie管理
6.2.5請(qǐng)求及響應(yīng)相關(guān)功能
6.2.6生成Python代碼
6.3PyCharm的高級(jí)功能
6.3.1PyCharm斷點(diǎn)調(diào)試
6.3.2SFTP同步代碼到服務(wù)器
6.3.3使用遠(yuǎn)程解釋器環(huán)境
6.3.4調(diào)試JavaScript代碼
6.3.5PyCharm的常用快捷鍵
6.3.6PyCharm數(shù)據(jù)庫(kù)管理
6.3.7智能補(bǔ)全插件aiXcode
6.3.8PyCharm中使用Git版本管理
6.4Git教程
6.4.1Git管理模型
6.4.2倉(cāng)庫(kù)基礎(chǔ)操作
6.4.3Git分支的管理
6.4.4Git標(biāo)簽的使用
6.4.5Git團(tuán)隊(duì)協(xié)作流程
6.4.6案例: 用GitHub完成團(tuán)隊(duì)協(xié)作
第7章Docker教程
7.1Docker的服務(wù)架構(gòu)
7.1.1什么是Docker
7.1.2Docker架構(gòu)模型
7.2Docker基礎(chǔ)
7.2.1容器的應(yīng)用
7.2.2鏡像的應(yīng)用
7.3Docker數(shù)據(jù)與網(wǎng)絡(luò)
7.3.1數(shù)據(jù)共享與持久化
7.3.2Docker的網(wǎng)絡(luò)模式
7.4Dockerfile的實(shí)踐
7.4.1一般準(zhǔn)則和建議
7.4.2Dockerfile指令
7.4.3多階段構(gòu)建
7.4.4案例: 從Python 3解釋器到項(xiàng)目代碼的構(gòu)建 
7.5Docker倉(cāng)庫(kù)管理
7.5.1使用官方倉(cāng)庫(kù)Docker Hub
7.5.2搭建私有倉(cāng)庫(kù)Registry
7.5.3搭建企業(yè)級(jí)倉(cāng)庫(kù)Harbor
7.6Docker Compose的容器編排
7.6.1YAML文件格式基礎(chǔ)
7.6.2Compose的安裝與卸載
7.6.3常用的yml配置指令
7.6.4常用的Compose 命令
7.6.5Compose編排案例
7.7案例: 容器化部署爬蟲(chóng)項(xiàng)目
第8章requests教程
8.1requests基礎(chǔ)
8.1.1requests的環(huán)境
8.1.2requests的簡(jiǎn)介
8.2Request
8.2.1Request的流程
8.2.2Request的接口
8.2.3Request控制訪問(wèn)參數(shù)
8.3Response
8.3.1Response對(duì)象的屬性
8.3.2Response對(duì)象的方法
8.3.3響應(yīng)內(nèi)容
8.3.4超時(shí)、錯(cuò)誤與異常
8.4實(shí)用函數(shù)工具
8.4.1URL處理方法
8.4.2獲取字符串編碼
8.4.3獲取headers中的編碼
8.4.4獲取環(huán)境變量中的代理
8.4.5提取URL中的認(rèn)證信息
8.5requests的高級(jí)用法
8.5.1會(huì)話對(duì)象
8.5.2Cookie對(duì)象
8.5.3SSL校驗(yàn)
8.5.4代理請(qǐng)求
8.5.5文件上傳
8.5.6身份認(rèn)證
8.6案例: POST登錄與郵箱驗(yàn)證
8.6.1登錄請(qǐng)求流程分析
8.6.2用POST登錄獲取會(huì)話
第9章Selenium教程
9.1Selenium基礎(chǔ)
9.1.1關(guān)于Selenium
9.1.2Selenium及驅(qū)動(dòng)安裝
9.2瀏覽器的啟動(dòng)
9.2.1啟動(dòng)本地瀏覽器
9.2.2啟動(dòng)遠(yuǎn)程分布式瀏覽器
9.2.3啟動(dòng)項(xiàng)參數(shù)配置
9.3Selenium常用的API
9.3.1常用瀏覽器的操作接口
9.3.2元素對(duì)象WebElement
9.3.3鍵入操作與選擇操作
9.3.4行為鏈ActionChains
9.3.5頁(yè)面的Cookie處理
9.3.6內(nèi)嵌框處理
9.3.7JavaScript事件
9.3.8超時(shí)問(wèn)題的處理
9.4Selenium的常用操作
9.4.1識(shí)別特征處理
9.4.2配置認(rèn)證代理
9.4.3響應(yīng)攔截操作
9.4.4控制安卓系統(tǒng)上的Chrome瀏覽器
9.5案例: Selenium登錄、滑動(dòng)驗(yàn)證、Session請(qǐng)求
9.5.1需求分析
9.5.2實(shí)現(xiàn)流程
9.5.3編碼實(shí)現(xiàn)
第10章多任務(wù)爬蟲(chóng)開(kāi)發(fā)
10.1多進(jìn)程
10.1.1Process類(lèi)創(chuàng)建進(jìn)程
10.1.2Process子類(lèi)創(chuàng)建進(jìn)程
10.1.3進(jìn)程池
10.1.4多進(jìn)程間通信
10.2多線程
10.2.1創(chuàng)建多線程
10.2.2鎖對(duì)象與死鎖
10.2.3全局解釋器鎖
10.3案例: 多線程圖片下載爬蟲(chóng)
10.3.1案例分析
10.3.2編碼實(shí)現(xiàn)
附錄參考資源網(wǎng)址
 

本目錄推薦

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