实操性很强的一本工具书,由浅入深,深入浅出。前面从环境配置到爬虫原理、基本库和解析库的使用再到数据存储,一步步把基础打好,然后再分门别类介绍了Ajax、动态页、验证码、App的爬取、识别等,还讲解了代理使用、模拟登录的应用。最后部分讲解了pyspider、Scrapy框架实例以及分布式部署等等。书中介绍到了很多非常实用的工具,比如用于动态网页爬取的Selenium、Splash,用于APP爬取的Charles、mitmdump、Appium等,以及分布式爬虫应用中的Scrapyd、Gerapy等等,书中的知识点和源代码都可以拿来直接使用。
本书一共分为 15 章,归纳如下(含电子版)
第1章:介绍了本书所涉及的所有环境的配置详细流程,兼顾Windows Linux Mac 3大平台,本章不用逐节阅读,需要的时候查阅即可
第2章:介绍了学习爬虫之前需要了解的基础知识,如 HTTP 、爬虫、代理的基本原理、网页基本结构等内容,对爬虫没有任何了解的读者建议好好了解这一章的知识
第3章:介绍了最基本的爬虫操作,一般学习爬虫都是从这一步学起的 章介绍了最基本的两个请求库( urllib 叫阴阳 )和正则表达式的基本用法 学会了这一章,就可以掌握最基本的爬虫技术了
第4章:介绍了页解析库的基本用法,包括 Beautiful Soup、XPath、pyquery 的基本使用方法,它们可以使得信息的提取更加方便、快捷,是爬虫必备利器
第5章:介绍了数据存储的常见形式及存储操作,包括 TXT、JSON、CSV 各种文件的存储,以及关系型数据库 MySQL 非关系型数据 MongoDB、Red is 存储的基本存储操作 学会了这些内容,我们可以灵活方便地保存爬取下来的数据
第6章:介绍了Ajax 数据爬取的过程,一些网页的数据可能是通过人Ajax 请求 API 接口的方式力加载的,用常规方法无法爬取,本章介绍了使用Ajax进行数据爬取的方法
第7章:介绍了动态渲染页面的爬取 ,现在越来越多的网站内容是经过 JavaSc ript 渲染得到的,而原始 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和 Red is 实现分布式爬虫的方法
第15章:介绍了分布式爬虫的部署及管理方法,方便快速地完成爬虫的分布式部署,可以节省开发者大量的时间。本章结合 Scrapy、 Scrapyd、 Docker、 Gerapy 等工具介绍了分布式爬虫部的署和管理的实现