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

Python3网络爬虫开发实战 第2版
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2021-11
版次: 2
ISBN: 9787115577092
定价: 139.80
装帧: 其他
开本: 其他
纸张: 胶版纸
页数: 918页
字数: 1.684千字
203人买过
  • 本书介绍了如何利用 Python 3 开发网络爬虫。本书为第 2 版,相比于第 1 版,为每个知识点的实战项目配备了针对性的练习平台,避免了案例过期的问题。另外,主要增加了异步爬虫、JavaScript 逆向、App 逆向、页面智能解析、深度学习识别验证码、Kubernetes 运维及部署等知识点,同时也对各个爬虫知识点涉及的请求、存储、解析、测试等工具进行了丰富和更新。
      本书适合Python 程序员阅读。 崔庆才

    微软(中国)软件工程师,北京航空航天大学硕士,主要研究网络爬虫、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
  • 内容简介:
    本书介绍了如何利用 Python 3 开发网络爬虫。本书为第 2 版,相比于第 1 版,为每个知识点的实战项目配备了针对性的练习平台,避免了案例过期的问题。另外,主要增加了异步爬虫、JavaScript 逆向、App 逆向、页面智能解析、深度学习识别验证码、Kubernetes 运维及部署等知识点,同时也对各个爬虫知识点涉及的请求、存储、解析、测试等工具进行了丰富和更新。
      本书适合Python 程序员阅读。
  • 作者简介:
    崔庆才

    微软(中国)软件工程师,北京航空航天大学硕士,主要研究网络爬虫、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
查看详情
相关图书 / 更多
Python3网络爬虫开发实战 第2版
Python和PySpark数据分析
(加)乔纳森·里乌
Python3网络爬虫开发实战 第2版
Python机器学习入门与实践 从深度学习到生成对抗网络GAN 深入浅出GAN生成对抗网络 实战gan TensorFlow与Keras 人工智能技术书籍
(日)大关真之
Python3网络爬虫开发实战 第2版
Python语言程序设计
王刚
Python3网络爬虫开发实战 第2版
Python代码编程 学科项目式编程(六年级)
冯建刚
Python3网络爬虫开发实战 第2版
Python机器学习 : 核心技术与开发实战 周志华西瓜书机器学习实战伴侣书
[美]普拉提克·乔希 著;李现伟 译者;颉腾文化 出品;阿尔伯托·阿尔塔桑切斯(美);曾小健
Python3网络爬虫开发实战 第2版
Python语言程序设计(微课版)
宁爱军 何志永
Python3网络爬虫开发实战 第2版
Python数据分析从入门到精通(第2版)
明日科技
Python3网络爬虫开发实战 第2版
Python数据分析与挖掘
齐福利
Python3网络爬虫开发实战 第2版
Python基础与应用(互联网+教育新形态一体化系列教材)
李喆时、谢家立、赵丽 编
Python3网络爬虫开发实战 第2版
Python数据分析与可视化项目实战
王振丽
Python3网络爬虫开发实战 第2版
Python爬虫从菜鸟到高手
李宁
Python3网络爬虫开发实战 第2版
Python程序设计基础教程
\"孙海龙 王济军\
您可能感兴趣 / 更多
Python3网络爬虫开发实战 第2版
Python 3网络爬虫开发实战
崔庆才 著