分享

python网络爬虫第一书:这本新书收获最多程序员读者!

 精神360 2018-09-27

python网络爬虫第一书:这本新书收获最多程序员读者!

在这个大数据时代,尤其是人工智能浪潮兴起的时代,不论是工程领域还是研究领域,数据已经成为必不可少的一部分,而数据的获取很大程度上依赖于爬虫的爬取,所以爬虫也逐渐变得火爆起来,甚至成为大部分工程师都想掌握的技能。

之前已经为读者推荐过一次《Python 3 网络爬虫开发实战》了,不仅是最受读者欢迎的 Python 爬虫类图书,也是 30 日最受读者欢迎的 IT 新书:(图与书,私信小编007即可获取!)



京东 IT 图书畅销榜截图


最近作者做了一个非常全面的思维导图,帮助大家更好地学习,因此我们也跟大家分享一下。(图与书,私信小编007即可获取!)

python网络爬虫第一书:这本新书收获最多程序员读者!

第1章 开发环境配置 1

1.1 Python 3 的安装 1

1.2 请求库的安装 10

1.3 解析库的安装 19

1.4 数据库的安装 26

1.5 存储库的安装 39

1.6 Web 库的安装 41

1.7 App 爬取相关库的安装 43

1.8 爬虫框架的安装 59

1.9 部署相关库的安装 67

第2章 爬虫基础 77

2.1 HTTP基本原理 77

2.2 网页基础 87

2.3 爬虫的基本原理 93

2.4 会话和 Cookies 95

2.5 代理的基本原理 99

第3章 基本库的使用 102

3.1 使用 urllib 102

3.2 使用 requests 122

3.4 抓取猫眼电影排行 150

第4章 解析库的使用 158

4.1 使用 XPath 158

4.2 使用 Beautiful Soup 168

4.3 使用 pyquery 184

第5章 数据存储 197

5.1 文件存储 197

5.2 关系型数据库存储 207

5.3 非关系型数据库存储 213

第6章 Ajax数据爬取 232

6.1 什么是 Ajax 232

6.2 Ajax 分析方法 234

6.3 Ajax 结果提取 238

6.4 分析 Ajax 爬取今日头条街拍美图 242

第7章 动态渲染页面爬取 249

7.1 Selenium 的使用 249

7.2 Splash 的使用 262

7.3 Splash 负载均衡配置 286

7.4 使用 Selenium 爬取淘宝商品 289

第8章 验证码的识别 298

8.1 图形验证码的识别 298

8.2 极验滑动验证码的识别 301

8.3 点触验证码的识别 311

8.4 微博宫格验证码的识别 318

第9章 代理的使用 326

9.1 代理的设置 326

9.2 代理池的维护 333

9.3 付费代理的使用 347

9.4 ADSL 拨号代理 351

9.5 使用代理爬取微信公众号文章 364

第10章 模拟登录 379

10.1 模拟登录并爬取 GitHub 379

10.2 Cookies 池的搭建 385

第11章 App 的爬取 398

11.1 Charles 的使用 398

11.2 mitmproxy 的使用 405

11.3 mitmdump 爬取“得到”App电子书信息 417

11.4 Appium 的基本使用 423

11.5 Appium 爬取微信朋友圈 433

11.6 Appium+mitmdump 爬取京东商品 437

第12章 pyspider 框架的使用 443

12.1 pyspider 框架介绍 443

12.2 pyspider 的基本使用 445

12.3 pyspider 用法详解 459

第13章 Scrapy 框架的使用 468

13.1 Scrapy 框架介绍 468

13.2 Scrapy 入门 470

13.3 Selector 的用法 480

13.4 Spider 的用法 486

13.5 Downloader Middleware 的用法 487

13.6 Spider Middleware 的用法 494

13.7 Item Pipeline 的用法 496

13.8 Scrapy 对接 Selenium 506

13.9 Scrapy 对接 Splash 511

13.10 Scrapy 通用爬虫 516

13.11 Scrapyrt 的使用 533

13.12 Scrapy 对接 Docker 536

13.13 Scrapy 爬取新浪微博 541

第14章 分布式爬虫 555

14.1 分布式爬虫原理 555

14.2 Scrapy-Redis 源码解析 558

14.3 Scrapy 分布式实现 564

14.4 Bloom Filter 的对接 569

第15章 分布式爬虫的部署 577

15.1 Scrapyd 分布式部署 577

15.2 Scrapyd-Client 的使用 582

这 15 章的内容,文字简单归纳如下。

第 1 章介绍了本书所涉及的所有环境的配置详细流程,兼顾 Windows、Linux、Mac 三大平台。本章不用逐节阅读,需要的时候查阅即可。

第 2 章介绍了学习爬虫之前需要了解的基础知识,如 HTTP、爬虫、代理的基本原理、网页基本结构等内容,对爬虫没有任何了解的读者建议好好了解这一章的知识。

第 3 章介绍了最基本的爬虫操作,一般学习爬虫都是从这一步学起的。这一章介绍了最基本的两个请求库(urllib和requests)和正则表达式的基本用法。学会了这一章,就可以掌握最基本的爬虫技术了。

第 4 章介绍了页解析库的基本用法,包括 Beautiful Soup、XPath、pyquery 的基本使用方法,它们可以使得信息的提取更加方便、快捷,是爬虫必备利器。

第 5 章介绍了数据存储的常见形式及存储操作,包括 TXT、JSON、CSV 各种文件的存储,以及关系型数据库MySQL和非关系型数据库MongoDB、Redis 存储的基本存储操作。学会了这些内容,我们可以灵活方便地保存爬取下来的数据。

第 6 章介绍了 Ajax 数据爬取的过程,一些网页的数据可能是通过Ajax请求API接口的方式加载的,用常规方法无法爬取,本章介绍了使用Ajax进行数据爬取的方法。

第 7 章介绍了动态渲染页面的爬取,现在越来越多的网站内容是经过JavaScript 渲染得到的,而原始HTML文本可能不包含任何有效内容,而且渲染过程可能涉及某些JavaScript加密算法,可以使用 Selenium、Splash 等工具来实现模拟浏览器进行数据爬取的方法。

第 8 章介绍了验证码的相关处理方法。验证码是网站反爬虫的重要措施,我们可以通过本章了解到各类验证码的应对方案,包括图形验证码、极验验证码、点触验证码、微博宫格验证码的识别。

第 9 章介绍了代理的使用方法,限制 IP 的访问也是网站反爬虫的重要措施。另外,我们也可以使用代理来伪装爬虫的真实IP,使用代理可以有效解决这个问题。通过本章,我们了解到代理的使用方法,还学习了代理池的维护方法,以及 ADSL 拨号代理的使用方法。

第 10 章介绍了模拟登录爬取的方法,某些网站需要登录才可以看到需要的内容,这时就需要用爬虫模拟登录网站再进行爬取了。本章介绍了最基本的模拟登录方法以及维护一个 Cookies 池的方法。

第 11 章介绍了App的爬取方法,包括基本的 Charles、mitmproxy 抓包软件的使用。此外,还介绍了 mitmdump 对接 Python 脚本进行实时抓取的方法,以及使用 Appium 完全模拟手机 App 的操作进行爬取的方法。

第 12 章介绍了 pyspider 爬虫框架及用法,该框架简洁易用、功能强大,可以节省大量开发爬虫的时间。本章结合案例介绍了使用该框架进行爬虫开发的方法。

第 13 章介绍了 Scrapy 爬虫框架及用法。Scrapy 是目前使用最广泛的爬虫框架,本章介绍了它的基本架构、原理及各个组件的使用方法,另外还介绍了 Scrapy 通用化配置、对接 Docker 的一些方法。

第 14 章介绍了分布式爬虫的基本原理及实现方法。为了提高爬取效率,分布式爬虫是必不可少的,本章介绍了使用 Scrapy 和 Redis 实现分布式爬虫的方法。

第 15 章介绍了分布式爬虫的部署及管理方法。方便快速地完成爬虫的分布式部署,可以节省开发者大量的时间。本章结合 Scrapy、Scrapyd、Docker、Gerapy 等工具介绍了分布式爬虫部署和管理的实现。


一上架即成为各大网店新书畅销榜榜首图书。此外,这本书也得到了多位技术大咖的推荐。


python网络爬虫第一书:这本新书收获最多程序员读者!


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多