计算机
类型
5.0
豆瓣评分
可以朗读
语音朗读
106千字
字数
2020-10-01
发行日期
展开全部
主编推荐语
实战爬虫技术,从业务需求到具体实现,涵盖自动化提取、部署调度、项目管理和分布式架构。
内容简介
本书从实际的爬虫业务需求延伸到知识点和具体实现,并详细介绍了其中的原理。首先带领读者领略爬虫程序的构成和完整链条,学习自动化工具的应用场景和基本使用;接着介绍了增量爬取的分类和具体实现、基于Redis的分布式爬虫实现和基于RabbitMQ的分布式爬虫实现,通过阅读论文和源码剖析详细介绍了高准确率的网页正文自动化提取方法;然后通过源码调试了解到与Python项目的部署和调度相关的知识,进而动手实践,编写了一款具备权限控制、Python通用项目部署、定时调度、异常监控和钉钉机器人消息通知的爬虫项目管理平台;最后通过解读分布式调度平台的核心架构,帮助大家了解分布式架构中最为重要的节点通信、文件同步等知识。
目录
- 封面
- 作者简介
- 版权信息
- 内容简介
- 前言
- 第1章 爬虫程序的构成和完整链条
- 1.1 一个简单的爬虫程序
- 1.2 爬虫的完整链条
- 1.3 爬取下来的数据被用在什么地方
- 1.4 爬虫工程师常用的库
- 1.4.1 网络请求库
- 1.4.2 网页文本解析
- 1.5 数据存储
- 1.5.1 将数据存入MySQL数据库
- 1.5.2 将数据存入MongoDB数据库
- 1.5.3 将数据存入Redis数据库
- 1.5.4 Excel文件的读写
- 1.6 小试牛刀——出版社新闻资讯爬虫
- 实践题
- 本章小结
- 第2章 自动化工具的使用
- 2.1 网页渲染工具
- 2.1.1 WebDriver是什么
- 2.1.2 Selenium的介绍和基本使用
- 2.1.3 Pyppeteer的介绍和基本使用
- 2.1.4 Splash知识扩展
- 本节小结
- 2.2 App自动化工具
- 2.2.1 Android调试桥
- 2.2.2 Airtest Project与Poco
- 2.2.3 爬取App中的图片
- 2.2.4 控制多台设备
- 本节小结
- 实践题
- 本章小结
- 第3章 增量爬取的原理与实现
- 3.1 增量爬取的分类和实现原理
- 3.1.1 增量爬取的分类
- 3.1.2 增量爬取的实现原理
- 本节小结
- 3.2 增量池的复杂度和效率
- 3.2.1 增量池的时间复杂度
- 3.2.2 增量池的空间复杂度
- 本节小结
- 3.3 Redis的数据持久化
- 3.3.1 持久化方式的分类和特点
- 3.3.2 RDB持久化的实践
- 3.3.3 AOF持久化的实践
- 3.3.4 Redis密码持久化
- 本节小结
- 实践题
- 本章小结
- 第4章 分布式爬虫的设计与实现
- 4.1 分布式爬虫的原理和分类
- 4.1.1 分布式爬虫的原理
- 4.1.2 分布式爬虫的分类
- 4.1.3 共享队列的选择
- 本节小结
- 4.2 分布式爬虫库Scrapy-Redis
- 4.2.1 Scrapy-Redis的介绍和基本使用
- 4.2.2 去重器、调度器和队列的源码解析
- 本节小结
- 4.3 基于Redis的分布式爬虫
- 4.3.1 对等分布式爬虫的实现
- 4.3.2 主从分布式爬虫的实现
- 本节小结
- 4.4 基于RabbitMQ的分布式爬虫
- 4.4.1 RabbitMQ的安装和基本操作
- 4.4.2 分布式爬虫的具体实现
- 本节小结
- 实践题
- 本章小结
- 第5章 网页正文自动化提取方法
- 5.1 Python Readability
- 5.2 基于文本及符号密度的网页正文提取方法
- 5.3 GeneralNewsExtractor
- 5.3.1 GeneralNewsExtractor的安装和使用
- 5.3.2 GeneralNewsExtractor的源码解读
- 本节小结
- 本章小结
- 第6章 Python项目打包部署与定时调度
- 6.1 如何判断项目是否需要部署
- 6.2 爬虫部署平台Scrapyd
- 6.2.1 Scrapyd的安装和服务启动
- 6.2.2 爬虫项目的打包和部署
- 本节小结
- 6.3 Scrapyd源码深度剖析
- 6.4 项目打包与解包运行实战
- 6.4.1 用Setuptools打包项目
- 6.4.2 运行EGG包中的Python项目
- 6.4.3 编码实现Python项目打包
- 本节小结
- 6.5 定时功能
- 6.5.1 操作系统提供的定时功能
- 6.5.2 编程语言实现的定时功能
- 6.5.3 APScheduler
- 本节小结
- 6.6 实战:开发Python项目管理平台Sailboat
- 6.6.1 Sailboat的模块规划和技术选型
- 6.6.2 Sailboat的权限设计思路
- 6.6.3 Sailboat的数据结构设计
- 6.6.4 Sailboat基础结构的搭建
- 6.6.5 Sailboat用户注册和登录接口的编写
- 6.6.6 Sailboat权限验证装饰器的编写
- 6.6.7 Sailboat项目部署接口和文件操作对象的编写
- 6.6.8 Sailboat项目调度接口的编写
- 6.6.9 Sailboat执行器的编写和日志的生成
- 6.6.10 Sailboat定时调度功能的实现
- 6.6.11 Sailboat异常监控和钉钉机器人通知功能的编写
- 本节小结
- 6.7 分布式调度平台Crawlab核心架构解析
- 实践题
- 本章小结
- 后折页
- 封底
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。