易燃物汇聚 YouTube 有声书与书评
精通Scrapy网络爬虫 封面

精通Scrapy网络爬虫

刘硕

1605人在读
18.9万字总字数
¥41.3定价

内容简介

本书深入系统地介绍了Python流行框架Scrapy的相关技术及使用技巧。全书共14章,从逻辑上可分为基础篇和高级篇两部分,基础篇重点介绍Scrapy的核心元素,如spider、selector、item、link等;高级篇讲解爬虫的高级话题,如登录认证、文件下载、执行JavaScript、动态网页爬取、使用HTTP代理、分布式爬虫的编写等,并配合项目案例讲解,包括供练习使用的网站,以及京东、知乎、豆瓣、360爬虫案例等。 本书案例丰富,注重实践,代码注释详尽,适合有一定Python语言基础,想学习编写复杂网络爬虫的读者使用。

读者书评

★★★★★

对scrapy框架进行了深入浅出的讲解,对于新手可能踩的坑会着重的点出来,比如数据导入MySQL不能每个item插入都执行commit,否则会造成堵塞(这个问题一直困扰着我,所以我后来用该框架一直都采用写文件而不是写入数据库),同时给出了解决方案——采用twisted异步方式adbapi写入数据库。 如果在几年前刚入门scrapy框架时能够遇到这本书,我想那时的我应该会少走一些弯路,可惜当时市面上关于scrapy深入讲解的书寥寥无几。 不过如今也不错,最近准备梳理和重构一个项目,准备采用scrapy,然后有幸读到这本书,用来回顾和巩固已有些陌生的scrapy框架还是不错的。

★★★★★

本书结合实际需求,对Scrapy的知识点由浅入深讲解,并结合实例的讲解,可以让读者更好的理解掌握,还对源码进行简单讲解,也为以后深入学习打下基础。基本涵盖了爬虫的很多情况,让读者有了思路,后期遇到也可以有解决问题的思路了。

★★★★★

很多东西来源于文档和源码,适合对scrapy有一定基础的人深入了解scrapy。文中还带着很多项目实战,受益匪浅

★★★★★

介绍了scnapy的基本使用,算是入门书籍,有相关的过程和实例。

★★★★★

Scrapy的确是个非常简单易用又实用的爬虫框架,dom解析、cookies、proxy、js渲染解析,这些功能都有,书中内容中还有一些模拟登陆、验证码识别、分布式抓取、异步执行等实战价值不错的示例,代码简单明了

★★★★★

对于入手scrapy框架的小白们非常值得一读,每章节内容不会太多,而且相比于一些国外书籍如《精通Python爬虫框架scrapy》来说,在表述上更符合国人的习惯。新手推荐:先看上面说的那本书的第二、第三章,了解静态页面下如何爬取;然后看本书的第11章,学习动态页面应该如何处理,同时返回本书第三章看看如何利用selector来进行页面内容的抽取,不仅仅通过xpath方法,也可以通过css方法。根据这些内容跑通一些简单示例后,就可以根据需求慢慢钻研更深入的东西了

★★★★★

精通Scrapy网络爬虫 刘硕 136个想法 ◆ 第1章 初识Scrapy >> 第1章 初识Scrapy ◆ 1.1 网络爬虫是什么 >> 1.1 网络爬虫是什么 >> 1.下载页面 >> 2.提取页面中的数据 >> 3.提取页面中的链接 ◆ 1.2 Scrapy简介及安装 >> 1.2 Scrapy简介及安装 ◆ 1.3 编写第一个Scrapy爬虫 >> 1.3 编写第一个Scrapy爬虫 >> 1.3.1 项目需求 >> 1.3.2 创建项目 >> 1.3.3 分析页面 >> 1.3.4 实现Spider >> 1.3.5 运行爬虫 ◆ 1.4 本章小结 >> 1.4 本章小结 ◆ 第2章 编写Spider >> 第2章 编写Spider ◆ 2.1 Scrapy框架结构及工作原理 >> 2.1 Scrapy框架结构及工作原理 ◆ 2.2 Request和Response对象 >> 2.2 Request和Response对象 >> 2.2.1 Request对象 >> 2.2.2 Response对象 ◆ 2.3 Spider开发流程 >> 2.3 Spider开发流程 >> 2.3.1 继承scrapy.Spider >> 2.3.2 为Spider命名 >> 2.3.3 设定起始爬取点 >> 2.3.4 实现页面解析函数 ◆ 2.4 本章小结 >> 2.4 本章小结 ◆ 第3章 使用Selector提取数据 >> 第3章 使用Selector提取数据 ◆ 3.1 Selector对象 >> 3.1 Selector对象 >> 3.1.1 创建对象 >> 3.1.2 选中数据 >> 3.1.3 提取数据 ◆ 3.2 Response内置Selector >> 3.2 Response内置Selector ◆ 3.3 XPath >> 3.3 XPath >> 3.3.1 基础语法表3-1列出了XPath常用的基本语法 >> 3.3.2 常用函数 ◆ 3.4 CSS选择器 >> 3.4 CSS选择器 ◆ 3.5 本章小结 >> 3.5 本章小结 ◆ 第4章 使用Item封装数据 >> 第4章 使用Item封装数据 ◆ 4.1 Item和Field >> 4.1 Item和Field ◆ 4.2 拓展Item子类 >> 4.2 拓展Item子类 ◆ 4.3 Field元数据 >> 4.3 Field元数据 ◆ 4.4 本章小结 >> 4.4 本章小结 ◆ 第5章 使用Item Pipeline处理数据 >> 第5章 使用Item Pipeline处理数据 ◆ 5.1 Item Pipeline >> 5.1 Item Pipeline >> 5.1.1 实现Item Pipeline ◆ 5.2 更多例子 >> 5.2 更多例子 >> 5.2.1 过滤重复数据 >> 5.2.2 将数据存入MongoDB ◆ 5.3 本章小结 >> 5.3 本章小结 ◆ 第6章 使用LinkExtractor提取链接 >> 第6章 使用LinkExtractor提取链接 ◆ 6.1 使用LinkExtractor >> 6.1 使用LinkExtractor ◆ 6.2 描述提取规则 >> 6.2 描述提取规则 ◆ 6.3 本章小结 >> 6.3 本章小结 ◆ 第7章 使用Exporter导出数据 >> 第7章 使用Exporter导出数据 ◆ 7.1 指定如何导出数据 >> 7.1 指定如何导出数据 >> 7.1.1 命令行参数 >> 7.1.2 配置文件 ◆ 7.2 添加导出数据格式 >> 7.2 添加导出数据格式 >> 7.2.1 源码参考 >> 7.2.2 实现Exporter ◆ 7.3 本章小结 >> 7.3 本章小结 ◆ 第8章 项目练习 >> 第8章 项目练习 ◆ 8.1 项目需求 >> 8.1 项目需求 ◆ 8.2 页面分析 >> 8.2 页面分析 ◆ 8.3 编码实现 >> 8.3 编码实现 ◆ 8.4 本章小结 >> 8.4 本章小结 ◆ 第9章 下载文件和图片 >> 第9章 下载文件和图片 ◆ 9.1 FilesPipeline和ImagesPipeline >> 9.1 FilesPipeline和ImagesPipeline >> 9.1.1 FilesPipeline使用说明 >> 9.1.2 ImagesPipeline使用说明 ◆ 9.2 项目实战:爬取matplotlib例子源码文件 >> 9.2 项目实战:爬取matplotlib例子源码文件 >> 9.2.1 项目需求 >> 9.2.2 页面分析 >> 9.2.3 编码实现 ◆ 9.3 项目实战:下载360图片 >> 9.3 项目实战:下载360图片 >> 9.3.1 项目需求 >> 9.3.2 页面分析 >> 9.3.3 编码实现 ◆ 9.4 本章小结 >> 9.4 本章小结 ◆ 第10章 模拟登录 >> 第10章 模拟登录 ◆ 10.1 登录实质 >> 10.1 登录实质 ◆ 10.2 Scrapy模拟登录 >> 10.2 Scrapy模拟登录 >> 10.2.1 使用FormRequest >> 10.2.2 实现登录Spider ◆ 10.3 识别验证码 >> 10.3 识别验证码 >> 10.3.1 OCR识别 >> 10.3.2 网络平台识别 >> 10.3.3 人工识别 ◆ 10.4 Cookie登录 >> 10.4 Cookie登录 >> 10.4.1 获取浏览器Cookie >> 10.4.2 CookiesMiddleware源码分析 >> 10.4.3 实现BrowserCookiesMiddleware >> 10.4.4 爬取知乎个人信息 ◆ 10.5 本章小结 >> 10.5 本章小结 ◆ 第11章 爬取动态页面 >> 第11章 爬取动态页面 ◆ 11.1 Splash渲染引擎 >> 11.1 Splash渲染引擎 >> 11.1.1 render.html端点 >> 11.1.2 execute端点 ◆ 11.2 在Scrapy中使用Splash >> 11.2 在Scrapy中使用Splash ◆ 11.3 项目实战:爬取toscrape中的名人名言 >> 11.3 项目实战:爬取toscrape中的名人名言 >> 11.3.1 项目需求 >> 11.3.2 页面分析 >> 11.3.3 编码实现 ◆ 11.4 项目实战:爬取京东商城中的书籍信息 >> 11.4 项目实战:爬取京东商城中的书籍信息 >> 11.4.1 项目需求 >> 11.4.2 页面分析 >> 11.4.3 编码实现 ◆ 11.5 本章小结 >> 11.5 本章小结 ◆ 第12章 存入数据库 >> 第12章 存入数据库 ◆ 12.1 SQLite >> 12.1 SQLite ◆ 12.2 MySQL >> 12.2 MySQL ◆ 12.3 MongoDB >> 12.3 MongoDB ◆ 12.4 Redis >> 12.4 Redis ◆ 12.5 本章小结 >> 12.5 本章小结 ◆ 第13章 使用HTTP代理 >> 第13章 使用HTTP代理 ◆ 13.1 HttpProxyMiddleware >> 13.1 HttpProxyMiddleware >> 13.1.1 使用简介 >> 13.1.2 源码分析 ◆ 13.2 使用多个代理 >> 13.2 使用多个代理 ◆ 13.3 获取免费代理 >> 13.3 获取免费代理 ◆ 13.4 实现随机代理 >> 13.4 实现随机代理 ◆ 13.5 项目实战:爬取豆瓣电影信息 >> 13.5 项目实战:爬取豆瓣电影信息 >> 13.5.1 项目需求 >> 13.5.2 页面分析 >> 13.5.3 编码实现 ◆ 13.6 本章小结 >> 13.6 本章小结 ◆ 第14章 分布式爬取 >> 第14章 分布式爬取 ◆ 14.1 Redis的使用 >> 14.1 Redis的使用 >> 14.1.1 安装Redis >> 14.1.2 Redis基本命令 >> 14.1.3 Python访问Redis ◆ 14.2 scrapy-redis源码分析 >> 14.2 scrapy-redis源码分析 >> 14.2.1 分配爬取任务部分 >> 14.2.2 汇总爬取数据部分 ◆ 14.3 使用scrapy-redis进行分布式爬取 >> 14.3 使用scrapy-redis进行分布式爬取 >> 14.3.1 搭建环境 >> 14.3.2 项目实战 ◆ 14.4 本章小结 >> 14.4 本章小结

★★★★★

讲scrapy的书籍不多,这本书讲得已经很好了,入门非常友好,跟着作者的步伐,可以一步步地实现下来!

★★★★★

初学者挺适合看,基本就是官方文档的翻译。

★★★★★

看完了这本书,作者应该是读过scrapy源码的。讲解的很实用,深度也可以,值得阅读。唯一觉得美中不足的是,爬取的数据显示内容截取的有点多,如果更少点就更好了。

书籍信息

作者刘硕
出版社清华大学出版社
出版时间2017-10-01
ISBN9787302484936
分类计算机-编程设计
格式EPUB
完结状态连载中
章节数78