【包邮】 Python3网络爬虫宝典 【正版九新】
九品消毒塑封
¥
17.1
2.2折
¥
79
九五品
仅1件
作者韦世东
出版社电子工业出版社
ISBN9787121394065
出版时间2020-10
装帧平装
开本16开
定价79元
货号9787121394065
上书时间2024-11-22
商品详情
- 品相描述:九五品
- 商品描述
-
作者简介
韦世东 资深爬虫工程师、2019 华为云·云享专家、掘金社区很好作者、GitChat 认证作者、夜幕团队(Night Team)成员、《Python3 反爬虫原理与绕过实战》作者,对反爬虫和逆向有研究,精通爬虫架构设计和工程链路实践,搭建过日流量亿级的爬虫架构。
目录
章爬虫程序的构成和完整链条1
1.1一个简单的爬虫程序1
1.2爬虫的完整链条3
1.3爬取下来的数据被用在什么地方7
1.4爬虫工程师常用的库11
1.4.1网络请求库11
1.4.2网页文本解析19
1.5数据存储30
1.5.1将数据存入MySQL数据库31
1.5.2将数据存入MongoDB数据库34
1.5.3将数据存入Redis数据库36
1.5.4Excel文件的读写38
1.6小试牛刀――出版社新闻资讯爬虫42
实践题46
本章小结47
第2章自动化工具的使用48
2.1网页渲染工具48
2.1.1WebDriver是什么51
2.1.2Selenium的介绍和基本使用52
2.1.3Pyppeteer的介绍和基本使用59
2.1.4Splash知识扩展61
本节小结62
2.2App自动化工具62
2.2.1Android调试桥62
2.2.2AirtestProject与Poco64
2.2.3爬取App中的图片75
2.2.4控制多台设备78
本节小结79
实践题79
本章小结79
第3章增量爬取的原理与实现80
3.1增量爬取的分类和实现原理81
3.1.1增量爬取的分类81
3.1.2增量爬取的实现原理83
本节小结88
3.2增量池的复杂度和效率88
3.2.1增量池的时间复杂度88
3.2.2增量池的空间复杂度95
本节小结103
3.3Redis的数据持久化103
3.3.1持久化方式的分类和特点103
3.3.2RDB持久化的实践106
3.3.3AOF持久化的实践112
3.3.4Redis密码持久化115
本节小结115
实践题115
本章小结116
第4章分布式爬虫的设计与实现117
4.1分布式爬虫的原理和分类117
4.1.1分布式爬虫的原理117
4.1.2分布式爬虫的分类120
4.1.3共享队列的选择122
本节小结125
4.2分布式爬虫库Scrapy-Redis126
4.2.1Scrapy-Redis的介绍和基本使用127
4.2.2去重器、调度器和队列的源码解析129
本节小结134
4.3基于Redis的分布式爬虫134
4.3.1对等分布式爬虫的实现135
4.3.2主从分布式爬虫的实现139
本节小结141
4.4基于RabbitMQ的分布式爬虫141
4.4.1RabbitMQ的安装和基本操作142
4.4.2分布式爬虫的具体实现146
本节小结152
实践题152
本章小结152
第5章网页正文自动化提取方法153
5.1PythonReadability155
5.2基于文本及符号密度的网页正文提取方法158
5.3GeneralNewsExtractor162
5.3.1GeneralNewsExtractor的安装和使用162
5.3.2GeneralNewsExtractor的源码解读165
本节小结175
本章小结175
第6章Python项目打包部署与定时调度176
6.1如何判断项目是否需要部署176
6.2爬虫部署平台Scrapyd179
6.2.1Scrapyd的安装和服务启动179
6.2.2爬虫项目的打包和部署180
本节小结184
6.3Scrapyd源码深度剖析185
6.4项目打包与解包运行实战197
6.4.1用Setuptools打包项目197
6.4.2运行EGG包中的Python项目199
6.4.3编码实现Python项目打包201
本节小结203
6.5定时功能203
6.5.1操作系统提供的定时功能203
6.5.2编程语言实现的定时功能206
6.5.3APScheduler209
本节小结212
6.6实战:开发Python项目管理平台Sailboat212
6.6.1Sailboat的模块规划和技术选型212
6.6.2Sailboat的权限设计思路214
6.6.3Sailboat的数据结构设计215
6.6.4Sailboat基础结构的搭建218
6.6.5Sailboat用户注册和登录接口的编写220
6.6.6Sailboat权限验证装饰器的编写229
6.6.7Sailboat项目部署接口和文件操作对象的编写232
6.6.8Sailboat项目调度接口的编写240
6.6.9Sailboat执行器的编写和日志的生成243
6.6.10Sailboat定时调度功能的实现248
6.6.11Sailboat异常监控和钉钉机器人通知功能的编写249
本节小结258
6.7分布式调度平台Crawlab核心架构解析.259
实践题262
本章小结262
内容摘要
本书从实际的爬虫业务需求延伸到知识点和具体实现,并详细介绍了其中的原理。首先带领读者领略爬虫程序的构成和完整链条,学习自动化工具的应用场景和基本使用;接着介绍了增量爬取的分类和具体实现、基于Redis的分布式爬虫实现和基于RabbitMQ的分布式爬虫实现,通过阅读论文和源码剖析详细介绍了高准确率的网页正文自动化提取方法;然后通过源码调试了解到与Python项目的部署和调度相关的知识,进而动手实践,编写了一款具备权限控制、Python通用项目部署、定时调度、异常监控和钉钉机器人消息通知的爬虫项目管理平台;很后通过解读分布式调度平台的核心架构,帮助大家了解分布式架构中很为重要的节点通信、文件同步等知识。本书适合爬虫工程师、爬虫技术爱好者和Python开发者阅读,也适合爬虫团队管理者、高校教师和培训机构的讲师阅读。
媒体评论
"在学习爬虫时,不能仅了解一个脚本下载了多少数据,更应该了解这背后的技术细节和风控对抗。再次看到韦老师的作品,感叹于他的持续学习能力和时间管理能力,相信本书能给大家带来更多的精彩内容!
——腾讯后端开发工程师 BruceDone
韦老师的又一力作, 从多个角度讲解爬虫知识,加入了分布式爬虫的相关知识以及实操案例,每一章都有相应的习题,可以让读者进一步巩固学习。除此之外,本书还分析了市面上的几个很好的框架,手把手教大家如何阅读开源项目,提高综合技术能力。这本书值得拥有。
——知乎不错爬虫工程师 陈祥安
爬虫是一门很好方便又实用的技术。在当今这个时代,凡是对数据有一定需求的企业,都会使用爬虫采集一些有价值的数据做分析。
本书贴合爬虫技术的实际应用场景和核心需求,由浅入深地将爬虫的概念、基本操作、内容提取、项目部署和调度逐一进行讲解,很好适合于爬虫入门学员和爬虫爱好者们阅读。
——知名爬虫团队 夜幕
本书选取了爬虫的一些核心知识点进行了重点梳理,每个知识点从原理到实战都讲解得很好透彻。如果大家想深入了解爬虫的一些核心知识,本书是上上之选。
—— 微软(中国)工程师、《Python3网络爬虫开发实战》作者 崔庆才
本书深入浅出地讲解了网络爬虫技术的基本原理以及工程实战。无论是刚入门的爬虫开发者还是颇有经验的爬虫工程师,本书都是他们的“武功秘籍”。书中关于企业级爬虫程序开发的介绍(包括增量抓取、分布式爬虫、爬虫调度等),能够让读者深入理解如何开发高效而健壮的企业级爬虫。本书的读者很好幸运,因为你们能够学到前沿实用的网络爬虫技术和知识。
—— 热门开源项目 Crawlab 作者 张冶青
看到本书样章时我很好惊讶,作者竟然把GNE的代码拆解分析,但转念一想,这正是作者一贯的风格——要使用一个库、框架、服务,就要先从源代码的层次去理解它的工作原理,这样不仅能用好它,还能提前考虑到是否会有潜在的风险和坑点。阅读本书,既能学习爬虫的开发理论,又能掌握爬虫工具的使用方法,还能了解他们的工作原理,一举多得,甚好甚好。
—— 热门开源项目GNE 作者 青南"
— 没有更多了 —
以下为对购买帮助不大的评价