Python3网络爬虫开发实战 第2版

0
(0)

Python3网络爬虫开发实战 第2版

作者:崔庆才

出版社:图灵丨人民邮电出版社

出品方:图灵教育

出版年:2021-11

页数:918

定价:139.80

装帧:平装

丛书:图灵原创

ISBN:9787115577092

内容简介
······

◎ 编辑推荐

Python 之父 Guido van Rossum 推荐的爬虫入门书,第 1 版销量近 100000 册;

微软中国大数据工程师、博客文章过百万的静觅大神力作;

新增异步爬虫、JavaScript 逆向、App 逆向、智能网页解析、深度学习识别验证码、Kubernetes 运维及部署等知识点

◎ 内容简介

本书介绍了如何利用 Python 3 开发网络爬虫。本书为第 2 版,相比于第 1 版,为每个知识点的实战项目配备了针对性的练习平台,避免了案例过期的问题。另外,主要增加了异步爬虫、JavaScript 逆向、App 逆向、页面智能解析、深度学习识别验证码、Kubernetes 运维及部署等知识点,同时也对各个爬虫知识点涉及的请求、存储、解析、测试等工具进行了丰富和更新。

本书适合Python 程序员阅读。

◎ 大佬推荐

I am happy to see that Python is so widely used in the Chinese IT community. I hope this book will help more people understand Python and web crawling/scraping.

——Guido van Rossum,Creator of Python, Distinguished Engineer,Microsoft

时代在不断进步,我们需要不断学习,庆才在工作上是这样,在兴趣上也是这样,这本爬虫书充分体现了这一点。第 2 版相比第 1 版内容更加全面,覆盖的知识点更为广泛,也更贴近技术前沿。本书具有通俗易懂的讲解和丰富的案例代码,可以让读者系统地学习爬虫相关的各种知识,我极力推荐大家阅读本书。

——曾文峰,微软亚洲互联网工程院副院长、微软公司全球合伙人

在今天这个数据驱动的人工智能时代,这个有越来越多移动互联网数据来自 App 的时代,主流的数据来源平台几乎都提高了数据采集的风控水平,这导致数据采集的难度越来越大,此时行业中需要一本书来帮助爬虫工程师提高技术水平。崔庆才的这本《Python 3 网络爬虫开发实战(第2版)》是市场上截至目前公开数据采集领域最好的图书之一,这本书能解答数据采集工作中遇到的大部分问题,更难得的是作者还建立了技术讨论群,方便大家交流和提高。

——梁斌 penny,北京八友科技总经理、清华大学博士

作为第 1 版的升级版,本书增加了很多前沿的爬虫相关技术。从爬虫入门到分布式抓取,本书详细介绍了爬虫技术的各个要点,并针对不同场景提出了不同的解决方案。另外,书中的实战案例也在第 1 版的基础上做了重构升级,能帮助读者更好地学习爬虫技术。本书内容通俗易懂,干货满满,强烈推荐给大家!

——宋睿华,中国人民大学高瓴人工智能学院长聘副教授

作者简介
······

崔庆才

微软(中国)软件工程师,北京航空航天大学硕士,主要研究网络爬虫、Web 开发、机器学习等方向。

目录
······

第1章 爬虫基础 1

1.1 HTTP基本原理 1

1.2 Web 网页基础 12

1.3 爬虫的基本原理 19

1.4 Session和Cookie 21

1.5 代理的基本原理 24

1.6 多线程和多进程的基本原理 26

第2章 基本库的使用 29

2.1 urllib的使用 29

2.2 requests的使用 47

2.3 正则表达式 63

2.4 httpx的使用 73

2.5 基础爬虫案例实战 78

第3章 网页数据的解析提取 90

3.1 XPath的使用 90

3.2 Beautiful Soup的使用 99

3.3 pyquery的使用 113

3.4 parsel 的使用 124

第4章 数据的存储 128

4.1 TXT 文本文件存储 128

4.2 JSON 文件存储 130

4.3 CSV 文件存储 134

4.4 MySQL 存储 138

4.5 MongoDB 文档存储 144

4.6 Redis缓存存储 151

4.7 Elasticsearch 搜索引擎存储 159

4.8 RabbitMQ 的使用 166

第5章 Ajax 数据爬取 174

5.1 什么是 Ajax 174

5.2 Ajax分析方法 176

5.3 Ajax 分析与爬取实战 179

第6章 异步爬虫 191

6.1 协程的基本原理 191

6.2 aiohttp的使用 201

6.3 aiohttp 异步爬取实战 207

第7章 JavaScript 动态渲染页面爬取 212

7.1 Selenium 的使用 212

7.2 Splash 的使用 226

7.3 Pyppeteer 的使用 242

7.4 Playwright 的使用 257

7.5 Selenium 爬取实战 269

7.6 Pyppeteer 爬取实战 276

7.7 CSS 位置偏移反爬案例分析与爬取实战 282

7.8 字体反爬案例分析与爬取实战 287

第8章 验证码的识别 293

8.1 使用 OCR 技术识别图形验证码 293

8.2 使用 OpenCV 识别滑动验证码的缺口 298

8.3 使用深度学习识别图形验证码 304

8.4 使用深度学习识别滑动验证码的缺口 309

8.5 使用打码平台识别验证码 316

8.6 手机验证码的自动化处理 324

第9章 代理的使用 331

9.1 代理的设置 331

9.2 代理池的维护 340

9.3 付费代理的使用 351

9.4 ADSL 拨号代理的搭建方法 357

9.5 代理反爬案例爬取实战 365

第 10章 模拟登录 373

10.1 模拟登录的基本原理 373

10.2 基于Session和Cookie的模拟登录爬取实战 376

10.3 基于JWT的模拟登录爬取实战 381

10.4 大规模账号池的搭建 385

第 11章 JavaScript 逆向爬虫 397

11.1 网站加密和混淆技术简介 397

11.2 浏览器调试常用技巧 413

11.3 JavaScript Hook 的使用 430

11.4 无限 debugger 的原理与绕过 440

11.5 使用 Python 模拟执行 JavaScript 445

11.6 使用 Node.js 模拟执行 JavaScript 451

11.7 浏览器环境下 JavaScript 的模拟执行 454

11.8 AST 技术简介 460

11.9 使用 AST 技术还原混淆代码 472

11.10 特殊混淆案例的还原 480

11.11 WebAssembly 案例分析和爬取实战 490

11.12 JavaScript 逆向技巧总结 498

11.13 JavaScript 逆向爬取实战 505

第 12章 App 数据的爬取 530

12.1 Charles 抓包工具的使用 530

12.2 mitmproxy 抓包工具的使用 538

12.3 mitmdump 实时抓包处理 544

12.4 Appium 的使用 551

12.5 基于 Appium 的 App 爬取实战 562

12.6 Airtest 的使用 568

12.7 基于 Airtest 的 App 爬取实战 585

12.8 手机群控爬取实战 591

12.9 云手机的使用 594

第 13章 Android 逆向 603

13.1 jadx 的使用 603

13.2 JEB 的使用 615

13.3 Xposed 框架的使用 624

13.4 基于 Xposed 的爬取实战案例 635

13.5 Frida 的使用 643

13.6 SSL Pining 问题的解决方案 650

13.7 Android 脱壳技术简介与实战 657

13.8 利用 IDA Pro 静态分析和动态调试 so 文件 664

13.9 基于 Frida-RPC 模拟执行 so 文件 680

13.10 基于 AndServer-RPC 模拟执行 so 文件 685

13.11 基于 unidbg 模拟执行 so 文件 692

第 14章 页面智能解析 700

14.1 页面智能解析简介 700

14.2 详情页智能解析算法简介 707

14.3 详情页智能解析算法的实现 714

14.4 列表页智能解析算法简介 722

14.5 列表页智能解析算法的实现 727

14.6 如何智能分辨列表页和详情页 735

第 15章 Scrapy框架的使用 739

15.1 Scrapy框架介绍 739

15.2 Scrapy入门 743

15.3 Selector 的使用 754

15.4 Spider 的使用 759

15.5 Downloader Middleware的使用 766

15.6 Spider Middleware的使用 775

15.7 Item Pipeline的使用 781

15.8 Extension的使用 792

15.9 Scrapy 对接 Selenium 795

15.10 Scrapy 对接 Splash 801

15.11 Scrapy 对接 Pyppeteer 806

15.12 Scrapy 规则化爬虫 813

15.13 Scrapy 实战 827

第 16章 分布式爬虫 840

16.1 分布式爬虫理念 840

16.2 Scrapy-Redis原理和源码解析 842

16.3 基于Scrapy-Redis的分布式爬虫实现 847

16.4 基于Bloom Filter进行大规模去重 851

16.5 基于RabbitMQ的分布式爬虫 859

第 17章 爬虫的管理和部署 862

17.1 Scrapyd和ScrapydAPI的使用 862

17.2 Scrapyd-Client 的使用 867

17.3 Gerapy 爬虫管理框架的使用 869

17.4 将Scrapy 项目打包成 Docker 镜像 873

17.5 Docker Compose 的使用 878

17.6 Kubernetes的使用 880

17.7 用 Kubernetes 部署和管理 Scrapy 爬虫 888

17.8 Scrapy 分布式爬虫的数据统计方案 899

17.9 基于Prometheus和Grafana的分布式爬虫监控方案 904

附录 爬虫与法律 917

评论 ······

很不错的爬虫书籍,但是有些案例随着网站发爬虫的举措变得不大可行,整体受益匪浅。

比第一版增删了好多,内容做了很大的更新,写的是实在太好了

爬虫界的教科书,每个学习爬虫人员的必读物,小白可以阅读,有经验的也可以阅读,力荐崔大大这本书,读完这本书后,基本上不用阅读其他的爬虫类书籍了

基本上是把github上的内容照搬过来了 论文参考了其中一部分抓取方法

点击星号评分!

平均分 0 / 5. 投票数: 0

还没有投票!请为他投一票。

推荐阅读

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册