Py学习  »  Python

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

图灵教育 • 5 年前 • 715 次点击  

题图:Freepik

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

之前已经为读者推荐过一次《Python 3 网络爬虫开发实战》了,不仅是最受读者欢迎的 Python 爬虫类图书,也是 30 日最受读者欢迎的 IT 新书

京东 IT 图书畅销榜截图


最近作者崔庆才老师做了一个非常全面的思维导图,帮助大家更好地学习,因此我们也跟大家分享一下。

点击查看大图

下载PDF:

https://pan.baidu.com/s/1Yf8ZB5SPveBmZmhHU-5zpQ


小崔老师从 2015 年开始接触爬虫,并将自己的学习总结分享在博客上,目前,博客访问量过百万。新书一上架即成为各大网店新书畅销榜榜首图书。此外,这本书也得到了多位技术大咖的推荐。



作者:崔庆才   定价:99


《Python3网络爬虫开发实战》全面介绍如何利用 Python 3 开发网络爬虫。

  • 书中首先详细介绍了环境配置过程和爬虫基础知识

  • 然后讨论了 urllib、requests 等请求库和 Beautiful Soup、XPath、pyquery 等解析库以及文本和各类数据库的存储方法

  • 接着通过多个案例介绍了分析 Ajax 进行数据爬取,Selenium 和 Splash 进行动态网站爬取的过程

  • 接着介绍了爬虫的一些技巧,如使用代理爬取和维护动态代理池的方法,ADSL 拨号代理的使用,图形、极验、点触、宫格等各类验证码的破解方法,模拟登录网站爬取的方法及 Cookies 池的维护

  • 此外,本书还结合移动互联网的特点探讨了使用 Charles、mitmdump、Appium 等工具实现 App 爬取的方法,紧接着介绍了 pyspider 框架、Scrapy 框架的使用和分布式爬虫的知识,最后介绍了 Bloom Filter 效率优化、Docker 和 Scrapyd 爬虫部署、Gerapy 爬虫管理等方面的知识


长按京东购



长按当当购



第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 等工具介绍了分布式爬虫部署和管理的实现。



评论赠书


各位小伙伴目前工作中处理数据的部分多吗? 都是些什么工作?如果大家在学习爬虫,分享一下自己学习爬虫知识的心得,或者说说自己曾经爬到过什么有趣的数据,又或者学会爬虫之后最想爬取什么数据。

精选评论挑选 3 位小伙伴送出赠书,截止 5 月 28 日。



点击【阅读原文】图灵各种 Python 好书


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/6Ykl49tDkh
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/12521
 
715 次点击