账号: 密码:
首页  |  宏观指导  |  出版社天地  |  图书代办站  |  教材图书信息 |  教材图书评论 |  在线订购 |  教材征订
  图书分类 - 中图法分类  专业分类  用途分类  自分类  制品类型  读者对象  版别索引 
搜索 新闻 图书 ISBN 作者 音像 出版社 代办站 教材征订
购书 请登录 免费注册 客服电话:010-62510665 62510769
图书查询索引 版别索引 分类索引 中图法分类 专业分类 用途分类 制品类型 读者对象 自分类 最新 畅销 推荐 特价 教材征订
综合查询
Python网络爬虫框架Scrapy从入门到精通 - 中国高校教材图书网
相关类别图书
作 者:张颖
出版社:北京大学出版社
用 途:其他
中 图: 自动化技术、计算机技术
专 业:计算机/网络>人工智能
制 品:图书
读 者:
最新可供书目

战争与文明:从路易十四到拿破仑

中国人民大学出版社


一本书读懂30部管理学经典

清华大学出版社


算法传播十讲

苏州大学出版社


人文职场英语(第2版)学生用书

上海外语教育出版社


数字时代的银龄行动——亚太地区老年人数字素养与技能现状调研

国家开放大学出版社

书名: Python网络爬虫框架Scrapy从入门到精通
ISBN:978-7-301-32022-8 条码:9787301320228
作者: 张颖  相关图书 装订:0
印次:1-1 开本:16开
定价: ¥79.00  折扣价:¥75.05
折扣:0.95 节省了3.95元
字数: 414千字
出版社: 北京大学出版社 页数: 292页
发行编号:7301 每包册数:
出版日期: 2021-03-23
小团购 订购 咨询 推荐 打印 放入存书架 相关评论

内容简介:
本书从Python主流框架Scrapy的简介及网络爬虫知识讲起,逐步深入到Scrapy进阶实战。本书从实战出发,根据不同需求,有针对性地讲解了静态网页、动态网页、App应用是如何爬取所需数据,以及Scrapy是如何部署分布式爬取,最后还介绍了用Scrapy + Pandas是如何进行数据分析及数据展示,让读者不但可以系统地学习Scrapy编程的相关知识,而且还能对Scrapy应用开发有更为深入的理解。 本书分为12章,涵盖的主要内容有Scrapy框架简介;Scrapy网络爬虫知识介绍;Scrapy开发环境的搭建;Scrapy架构及编程;Scrapy进阶;实战项目:Scrapy静态网页的爬取;实战项目:Scrapy动态网页的爬取;实战项目:Scrapy爬取App应用数据;Scrapy的分布式部署与爬取;分布式的实战项目;用Selenium框架测试网站;用Scrapy + Pandas进行数据分析。 本书内容通俗易懂,实例典型,实用性强,特别适合学习Python主流框架Scrapy的入门读者和进阶读者阅读,也适合数据分析与挖掘技术的初学者阅读,还适合相关培训机构的师生阅读。

作者简介:
张颖,“清颖设计”微信公众号创始人,现任上海懂得网络科技有限公司技术部主管,从事编程开发十余年,熟悉Python的方方面面,尤其擅长Python爬虫和数据分析。

章节目录:
第1章 Scrapy框架简介
1.1 Scrapy简介 2
1.2 关于本书:目标和用途 2
1.3 进行自动化数据爬取的重要性 3
1.4 掌握自动化测试的重要性 3
1.5 合理规划,开发高质量的应用 4
1.6 网络数据的采集法律与道德约束 5
1.7 本章小结 5
第2章 Scrapy网络爬虫知识介绍
2.1 爬虫的作用 7
2.2 爬虫必备的前端知识 9
2.3 爬虫经常用的Python语法 26
2.4 本章小结 44
第3章 Scrapy开发环境的搭建
3.1 安装Python 47
3.2 数据库的安装 50
3.3 安装Scrapy 56
3.4 本章小结 60
第4章 Scrapy架构及编程
4.1 Scrapy架构及目录源码分析 62
4.2 Scrapy项目的创建和管理 67
4.3 PyCharm如何调试Scrapy 72
4.4 Scrapy的组件 77
4.5 Scrapy的数据流 78
4.6 数据存储 78
4.7 Scrapy如何定义中间件 80
4.8 Scrapy其他方法的使用 82
4.9 本章小结 83
第5章 Scrapy进阶
5.1 理解Scrapy性能 85
5.2 编写Spider的逻辑 93
5.3 Item和Pipeline 95
5.4 数据库存储 98
5.5 Scrapy集成随机User-Agent和代理IP 100
5.6 突破反爬技术 102
5.7 图片和文件下载 103
5.8 如何部署爬虫 108
5.9 计划定时爬取 111
5.10 本章小结 112
第6章 实战项目:Scrapy静态网页的爬取
6.1 采集需求及网页分析 114
6.2 数据表的设计 115
6.3 获取和解析列表、详情页 115
6.4 数据存储 117
6.5 数据的导出和展示 119
6.6 本章小结 121
第7章 实战项目:Scrapy动态网页的爬取
7.1 采集需求及网页分析 123
7.2 Selenium的安装和使用 124
7.3 解析网页及代码的实现 126
7.4 数据的存储 128
7.5 数据的导出 130
7.6 本章小结 133
第8章 实战项目:Scrapy爬取App应用数据
8.1 搭建开发环境 135
8.2 移动自动化工具 144
8.3 Appium Desktop工具的录制功能 147
8.4 App应用数据抓取实战项目 150
8.5 本章小结 158
第9章 Scrapy的分布式部署与爬取
9.1 分布式系统概述及要点 160
9.2 使用Gerapy管理分布式爬虫 162
9.3 通过Scrapyd + ScrapydWeb简单高效地部署和监控分布式爬虫项目 168
9.4 使用Scrapy-Redis实现分布式爬虫 174
9.5 本章小结 195
第10章 分布式的实战项目
10.1 搭建Redis服务器 197
10.2 创建主项目及配置Scrapy-Redis 197
10.3 创建从项目及配置Scrapy-Redis 200
10.4 部署代理IP池及User-Agent 203
10.5 执行程序 205
10.6 本章小结 206
第11章 用Selenium框架测试网站
11.1 网站测试简介 208
11.2 用Scrapy + Selenium进行前端自动化测试 208
11.3 本章小结 235
第12章 用Scrapy + Pandas进行数据分析
12.1 Python数据分析概述 237
12.2 NumPy简介及操作 238
12.3 Matplotlib简介及操作 247
12.4 Pandas简介及操作 256
12.5 实战项目:Scrapy爬取网站并用Pandas进行数据分析 267
12.6 本章小结 284

精彩片段:
第1章 Scrapy框架简介
欢迎来到Scrapy的世界,Scrapy是用Python语言编写的开源网络爬虫框架。如果想在网络上合法地采集想要的数据,或者想要测试网站的性能,那么本书会介绍如何使用Scrapy实现这些功能。不管是经验很少的初学者还是基本没接触过Scrapy的读者,都可通过本书的各种实例、实战项目掌握Scrapy。
1.1 Scrapy简介
从头开发一个爬虫程序是一项很烦琐吃力的工作。为了避免重复地造轮子消耗大量的时间,降低开发成本,提高程序的质量,我们会选择一些优秀的爬虫框架,Scrapy就是其中之一。Scrapy是现在非常流行的开源爬虫框架,而且还是一个成熟的框架;是Python开发的一个快速、高层次的Web数据抓取框架,用于抓取Web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据采集、数据挖掘、网络异常用户检测、存储数据、监测和自动化测试等方面。
Scrapy使用了Twisted异步网络框架来处理网络通信,可以加快下载速度,不用自己去实现异步框架,并且包含了各种中间件接口,可以灵活地完成各种需求。它也提供了多种类型爬虫的基类,如BaseSpider、Sitemap爬虫等,最新版本又提供了Web 2.0爬虫的支持。
Scrapy是基于事件的架构,使数据清洗、格式化、数据存储级联起来。当打开上千万链接时,可以同时合理地拆分吞吐量,只要合理设计,性能的降低就会比较小。例如,假如想从某网站获取商品销量的信息,假设每页包含100个商品的销量。Scrapy可以非常轻松地在该网站并行(同时)执行16个请求。如果一个请求需要1秒,那么每秒就会爬取16页,把16页乘每页的商品数量,最后得出每秒爬取1600个商品销量的信息。这样,速度和性能大大增加,比单线程每秒爬取100个商品,足足快了16倍。
1.2 关于本书:目标和用途
本书的目标:通过基础知识的梳理,重点示例和实战项目的演示,来教读者如何使用Scrapy。
第2~4章,梳理运用Scrapy所需要的基础必备知识,以及Scrapy在不同操作系统中是如何搭建的。第5章是Scrapy的进阶知识介绍,让读者更好地掌握Scrapy并且能更好地运用它。第6~10章是实战项目,分别通过静态网页、动态网页、App的数据抓取及分布式的部署与爬取,让读者更深入地了解和掌握Scrapy的框架精华。第11章是通过爬虫测试网站性能的介绍和实例,让读者掌握Scrapy的另一个功能——自动化测试。第12章是利用Python进行数据分析,并对三大模块——NumPy、Matplotlib和Pandas进行了详细介绍,通过实例来演示Scrapy爬取网站,并对爬取到的数据进行分析及视图展示。
由浅入深地阅读本书,并且通过本书的实战项目去练习所学知识,举一反三地磨炼,这样就能成为很优秀的Scrapy开发者。
1.3 进行自动化数据爬取的重要性
2011年5月,麦肯锡全球研究院发布报告——Big data: The next frontier for innovation, competition, and productivity,第一次给大数据做出相对清晰的定义:“大数据是指其大小超出了常规数据库工具获取、储存、管理和分析能力的数据集。”而数据爬取始终与大数据联系在一起,为所有预测提供了基础。“大数据赋予我们预测未来的能力”,这就是数据挖掘的力量。
如今我们的生活已经被数字化:每笔互联网上的、银行卡的交易都是数字化的,每次互联网上浏览的行为都有可能被保存下来进行数字化。随着可穿戴设备的兴起,每一次心跳和呼吸也会被数字化并保存为可用的数据。所以,一台计算机或手机比以往任何时候都能更好地“理解”我们的世界。如果计算机或手机能预测人们的生活方式,它就能准确地告知企业什么时候是进行促销的最佳时机,例如,如果这个人倾向于每周六去餐厅聚会,那么企业可以给他推送餐厅的优惠信息。如果这个人倾向于每年春节出去度假,那么企业可以给他推送一张酒店住宿优惠券或旅游优惠券。互联网金融、医疗病例分析、数据建模、信息聚类、数据分析服务等,这些系统所需要的数据几乎都是要通过爬虫进行获取,并且通过规范化提取完成。它们通过提取到的数据进行分析,进行销售预测,指定商业策略,使营业利润最大化。从海量病例信息中挖掘有价值的信息,提高患者诊断的准确度、治疗的精确度,为医院决策管理提供有力的支持。所以,一旦未来变得可预测,我们总是可以提前计划,并为之做最好的行动准备。
1.4 掌握自动化测试的重要性
是否需要进行软件测试主要取决于以下几点。
(1)客户需求度逐渐提高,相应的对软件系统的要求和期望越来越高。
(2)软件系统复杂度提高,需要多人进行合作。
(3)软件开发是程序员的智力活动,无法用固定的生产标准来管理。
由于以上原因,导致软件质量降低,进度和成本无法控制。所以,我们要尽早测试,尽早发现问题。而且运行一套测试方法能够保证代码按照规定的功能和目标运行,不仅节约时间,而且减少产生BUG的可能性。
手工测试通常是工程师先执行预定义的测试用例,将执行结果与预期的行为进行手工比较并记录结果。每次源代码更改时都会重复这些手动测试,由于都是人为参与,因此这个过程很容易出错。古语有云:“工欲善其事,必先利其器。” 自动化测试则是将自动化工具和技术应用于软件测试,让程序代替人去验证程序功能的过程,旨在减少测试工作,更快、更经济地验证软件质量,有助于以更少的工作量构建质量更好的软件。
自动化测试分为三个层级:单元测试、接口测试和UI测试,这三层呈一个金字塔形状分布。最底层是单元测试,接口测试在中间,UI测试在最上层。
自动化测试还可以解决以下问题。
(1)软件在发布新版本以后对之前的功能进行验证。
(2)软件的压力测试,即多用户同时操作软件,软件服务器处理多用户请求的能力。
(3)软件的兼容性测试,即在不同浏览器(IE、Chrome、Firefox等)中的展现能力,或者在不同操作系统(Windows、Linux等)中的兼容能力。
目前大多数编程语言(包括Python)都有一些测试框架。将Python的Unittest库与网络爬虫组合起来,就可以实现简单的网站前端测试功能。Python的Selenium是一个可以解决网站中各种复杂问题的优秀测试框架,用它可以写出一些符合测试流程的测试脚本进行网站测试。
1.5 合理规划,开发高质量的应用
为了合理规划,开发高质量的应用,需要通过网络数据采集,对其关键共性技术进行研发,提升数据存储、理论算法、模型分析等核心竞争力,做出面向大数据的分析软件。
通过爬虫的细心抓取,可以为企业提供大量的真实数据,帮助企业构建覆盖全流程、全环节、全生命周期的数据链,使企业提升数据分析处理和知识创造能力的同时,还可以帮助企业及早发现和修复错误,并做出明智的决策。
1.6 网络数据的采集法律与道德约束
当我们开发爬虫进行网络采集时,需要关注网络上数据的版权。如果采集别人的文章放在自己的网站上展示,则侵犯了别人对这篇文章的版权。一般爬虫采集的大多数数据都是统计数据,但是如果采集的数据源被对方申请了版权,那么在未取得授权的情况下是不能进行采集的。
以下行为表示违反了采集法律。
(1)超出Robots协议的许可。Robots协议是国际互联网界通行的道德规范,也是一种存放于网站根目录下的文本文件,它通常告诉爬虫,此网站中的哪些内容是不可以爬取的,哪些内容是可以爬取的。打个比方:网站就像酒店里的房间,房间的门口会挂着“请勿打扰”或“欢迎光临”的提示牌。那么,服务生就知道哪些房间能够进入,哪些房间不能进入。如果强行进入“请勿打扰”的房间,就算违法了。Scrapy提供了这些功能的设置。
(2)对爬取的网站造成了实际的伤害。网络服务器是很昂贵的,如果由于无限量大批地从目标网站爬取数据,使目标网站崩溃,就会导致网站无法为其他用户正常地提供服务。这些都算是对目标网站造成的伤害。
(3)故意而为之。虽然采集有时需要很长的时间,但最好让爬虫在午夜进行,这样可以减少目标网站的压力。这样的行为可以不影响网站高峰期的运行。
1.7 本章小结
本章介绍了Scrapy,介绍了它能够帮助用户做什么,并且阐述了自动化数据爬取和自动化测试的重要性。此外,告诉读者合理规划,开发高质量的应用及网络数据需要合法采集。
书  评:
 
其  它:
(1)系统:全流程讲解Scrapy的原理和实战,依次击破编程难点。
(2)经典:凝聚笔者十多年的Scrapy使用经验,无私奉献设计秘籍。
(3)深入:浅入深出地介绍爬虫原理、数据爬取、数据保存、数据分析和测试等技术。并且,所有案例都配有对应的代码,拿来就用。



专业分类
经济学  公共课与文化课  政治法律  教育学  文学艺术  历史学  理学  工学  农学  医学  计算机/网络  管理学  其他  外语  哲学
用途分类
大学本科教材 大学本科以上教材 大学教学参考书 考研用书 自学考试教材 高职高专教材 中职、中专类教材 中小学教材、教辅
电大用书 学术专著 考试辅导类图书 工具书 培训教材 其他
中图法分类
医药、卫生  语言、文字  工业技术  交通运输  航空、航天  环境科学、安全科学  综合性图书  文学  艺术  历史、地理  自然科学总论  数理科学和化学  天文学、地球科学  生物科学  哲学、宗教  社会科学总论  政治、法律  军事  经济  马克思主义、列宁主义、毛泽东思想、邓小平理论  文化、科学、教育、体育  农业科学
版别索引
北京大学出版社 北京师范大学出版社 清华大学出版社 中国人民大学出版社
北京工业大学出版社 北京大学医学出版社 北京航空航天大学出版社 北京交通大学出版社
北京理工大学出版社 北京体育大学出版社 北京邮电大学出版社 中央音乐学院出版社
北京语言大学出版社 对外经济贸易大学出版社 国家开放大学出版社 首都经济贸易大学出版社
首都师范大学出版社 外语教学与研究出版社
更多...
网上购书指南
一、我的账户
用户注册
用户登录
修改用户密码
修改个人资料
二、查询图书
快速查询
分类查询
综合查询
三、订购图书
第一步点击“订购”按钮
第二步确定收货人信息
第三步提交订单
存书架
四、邮购方式
普通邮寄
特快专递
五、付款方式
支付宝
邮局汇款
六、我的订单
查询订单
修改或取消订单
联系我们

| 我的帐户 | 我的订单 | 购书指南| 关于我们 | 联系我们 | 敬告 | 友情链接 | 广告服务 |

版权所有 © 2000-2002 中国高校教材图书网    京ICP备10054422号-7    京公网安备110108002480号    出版物经营许可证:新出发京批字第版0234号
经营许可证编号:京ICP证130369号    技术支持:云因信息