大数据采集技术与应用 / 高等院校大数据应用型人才培养立体化资源“十四五”系列教材
¥49.80定价
作者: 陈恒星,唐海涛,何亮等
出版时间:2024-12
出版社:中国铁道出版社
- 中国铁道出版社
- 9787113309770
- 1版
- 531478
- 16开
- 2024-12
- 计算机及相关专业
- 本科 高职
作者简介
内容简介
本书针对目前大数据发展的方向,根据数据获取领域数据获取的原理、技术而编写。本书分为基础篇、实践篇和拓展篇:基础篇主要讲述了爬虫的基本原理、爬虫的基本配置以及爬虫相关库的使用;实践篇包括Scrapy 框架的原理和应用以及大数据采集工具的使用;拓展篇通过一个案例———爬取网络云课课程信息来整合前面的技术。
本书以提高读者能力为导向,以案例为基础,在讲解技术的同时辅以案例来帮助读者领会和掌握技术,体现了逐层递进、从简单到综合的思想。
本书适合作为高等院校大数据、物联网等计算机相关专业的教材,也可作为相关培训机构数据采集课程的教材,亦可供从事相关工作的专业技术人员使用。
本书以提高读者能力为导向,以案例为基础,在讲解技术的同时辅以案例来帮助读者领会和掌握技术,体现了逐层递进、从简单到综合的思想。
本书适合作为高等院校大数据、物联网等计算机相关专业的教材,也可作为相关培训机构数据采集课程的教材,亦可供从事相关工作的专业技术人员使用。
目录
基础篇
项目一 认识大数据采集技术………………………………………………………………… 3
任务一 大数据采集技术的概念……………………………………………………………… 3
一、掌握大数据的主流技术……………………………………………………………… 3
二、识记大数据采集技术………………………………………………………………… 9
三、识记大数据采集工具………………………………………………………………… 11
任务二 理解网络爬虫与反爬虫…………………………………………………………… 12
一、识记爬虫的定义…………………………………………………………………… 12
二、识记爬虫的分类…………………………………………………………………… 13
三、领会爬虫的工作原理………………………………………………………………… 15
四、识记爬虫的搜索策略………………………………………………………………… 16
五、领会反爬虫的目的和策略…………………………………………………………… 17
任务三 学习爬虫开发基础知识…………………………………………………………… 19
一、掌握HTTP 基本原理………………………………………………………………… 19
二、掌握网页基础知识…………………………………………………………………… 30
三、掌握会话和Cookies ………………………………………………………………… 32
思考与练习…………………………………………………………………………………… 34
项目二 配置爬虫环境………………………………………………………………………… 36
任务一 安装Python 3 ……………………………………………………………………… 36
一、了解Python ………………………………………………………………………… 36
二、Windows 操作系统下安装Python …………………………………………………… 37
三、Linux 操作系统下安装Python ……………………………………………………… 49
任务二 安装请求库………………………………………………………………………… 50
一、安装Requests ……………………………………………………………………… 50
二、安装Selenium ……………………………………………………………………… 51
三、安装Chromedriver …………………………………………………………………… 52
任务三 安装解析库………………………………………………………………………… 54
一、安装lxml …………………………………………………………………………… 54
二、安装BeautifulSoup …………………………………………………………………… 55
三、安装Pyquery ………………………………………………………………………… 55
四、安装MySQL 和PyMySQL …………………………………………………………… 55
任务四 安装数据库及爬虫框架…………………………………………………………… 58
一、安装MongoDB 和PyMongo ………………………………………………………… 58
二、安装Redis、Redis-py 和Redisdump ………………………………………………… 63
三、安装Scrapy ………………………………………………………………………… 64
思考与练习…………………………………………………………………………………… 64
项目三 使用数据爬取相关库………………………………………………………………… 66
任务一 使用请求库………………………………………………………………………… 66
一、使用urllib 爬取数据………………………………………………………………… 66
二、解析链接…………………………………………………………………………… 71
三、使用Requests 爬取数据……………………………………………………………… 72
任务二 使用解析库………………………………………………………………………… 79
一、使用XPATH ………………………………………………………………………… 79
二、使用BeautifulSoup 解析数据………………………………………………………… 89
三、使用PyQuery 解析数据……………………………………………………………… 93
四、爬取Ajax 数据……………………………………………………………………… 96
任务三 使用存储库………………………………………………………………………… 104
一、文件存储…………………………………………………………………………… 104
二、存储到MySQL ……………………………………………………………………… 107
三、存储到非关系型数据库…………………………………………………………… 111
思考与练习………………………………………………………………………………… 116
实践篇
项目四 应用图像识别技术…………………………………………………………………… 119
任务 识别图形验证码……………………………………………………………………… 119
一、图形验证码与相关识别库………………………………………………………… 119
二、安装配置Tesserocr ………………………………………………………………… 120
三、安装Python 图片识别库…………………………………………………………… 123
四、使用Python 图片识别库…………………………………………………………… 123
思考与练习………………………………………………………………………………… 125
项目五 使用Scrapy 框架…………………………………………………………………… 126
任务 使用Scrapy 框架…………………………………………………………………… 126
一、了解Scrapy 框架…………………………………………………………………… 126
二、创建Scrapy 项目…………………………………………………………………… 129
三、配置Scrapy 项目…………………………………………………………………… 130
四、运行Scrapy 项目…………………………………………………………………… 131
五、保存数据到文件…………………………………………………………………… 132
思考与练习………………………………………………………………………………… 132
项目六 使用大数据采集工具……………………………………………………………… 135
任务一 认识大数据同步技术———DataX ………………………………………………… 135
一、了解DataX 的基本概念…………………………………………………………… 135
二、DataX 3. 0 的框架设计……………………………………………………………… 136
三、安装并配置DataX 3. 0 …………………………………………………………… 139
四、DataX 应用实例参考……………………………………………………………… 141
任务二 认识大数据采集技术———Kafka ………………………………………………… 143
一、了解Kafka ………………………………………………………………………… 143
二、Kafka 的安装与应用………………………………………………………………… 146
思考与练习………………………………………………………………………………… 147
拓展篇
项目七 爬取网络云课信息…………………………………………………………………… 150
任务 使用Scrapy 爬取网络云课数据…………………………………………………… 150
一、了解爬取项目……………………………………………………………………… 150
二、准备爬取项目……………………………………………………………………… 151
三、理解爬取思路……………………………………………………………………… 151
四、分析爬取项目……………………………………………………………………… 151
五、创建项目…………………………………………………………………………… 154
六、创建Item …………………………………………………………………………… 156
七、提取数据…………………………………………………………………………… 156
八、清洗数据…………………………………………………………………………… 160
九、存储数据…………………………………………………………………………… 161
十、搭建Cookies 池…………………………………………………………………… 163
十一、搭建IP 代理池…………………………………………………………………… 164
十二、启用MiddleWare ………………………………………………………………… 165
十三、运行项目………………………………………………………………………… 166
思考与练习………………………………………………………………………………… 168
附录A 缩略语………………………………………………………………………………… 170
附录B 思考与练习参考答案………………………………………………………………… 172
参考文献………………………………………………………………………………………… 179
项目一 认识大数据采集技术………………………………………………………………… 3
任务一 大数据采集技术的概念……………………………………………………………… 3
一、掌握大数据的主流技术……………………………………………………………… 3
二、识记大数据采集技术………………………………………………………………… 9
三、识记大数据采集工具………………………………………………………………… 11
任务二 理解网络爬虫与反爬虫…………………………………………………………… 12
一、识记爬虫的定义…………………………………………………………………… 12
二、识记爬虫的分类…………………………………………………………………… 13
三、领会爬虫的工作原理………………………………………………………………… 15
四、识记爬虫的搜索策略………………………………………………………………… 16
五、领会反爬虫的目的和策略…………………………………………………………… 17
任务三 学习爬虫开发基础知识…………………………………………………………… 19
一、掌握HTTP 基本原理………………………………………………………………… 19
二、掌握网页基础知识…………………………………………………………………… 30
三、掌握会话和Cookies ………………………………………………………………… 32
思考与练习…………………………………………………………………………………… 34
项目二 配置爬虫环境………………………………………………………………………… 36
任务一 安装Python 3 ……………………………………………………………………… 36
一、了解Python ………………………………………………………………………… 36
二、Windows 操作系统下安装Python …………………………………………………… 37
三、Linux 操作系统下安装Python ……………………………………………………… 49
任务二 安装请求库………………………………………………………………………… 50
一、安装Requests ……………………………………………………………………… 50
二、安装Selenium ……………………………………………………………………… 51
三、安装Chromedriver …………………………………………………………………… 52
任务三 安装解析库………………………………………………………………………… 54
一、安装lxml …………………………………………………………………………… 54
二、安装BeautifulSoup …………………………………………………………………… 55
三、安装Pyquery ………………………………………………………………………… 55
四、安装MySQL 和PyMySQL …………………………………………………………… 55
任务四 安装数据库及爬虫框架…………………………………………………………… 58
一、安装MongoDB 和PyMongo ………………………………………………………… 58
二、安装Redis、Redis-py 和Redisdump ………………………………………………… 63
三、安装Scrapy ………………………………………………………………………… 64
思考与练习…………………………………………………………………………………… 64
项目三 使用数据爬取相关库………………………………………………………………… 66
任务一 使用请求库………………………………………………………………………… 66
一、使用urllib 爬取数据………………………………………………………………… 66
二、解析链接…………………………………………………………………………… 71
三、使用Requests 爬取数据……………………………………………………………… 72
任务二 使用解析库………………………………………………………………………… 79
一、使用XPATH ………………………………………………………………………… 79
二、使用BeautifulSoup 解析数据………………………………………………………… 89
三、使用PyQuery 解析数据……………………………………………………………… 93
四、爬取Ajax 数据……………………………………………………………………… 96
任务三 使用存储库………………………………………………………………………… 104
一、文件存储…………………………………………………………………………… 104
二、存储到MySQL ……………………………………………………………………… 107
三、存储到非关系型数据库…………………………………………………………… 111
思考与练习………………………………………………………………………………… 116
实践篇
项目四 应用图像识别技术…………………………………………………………………… 119
任务 识别图形验证码……………………………………………………………………… 119
一、图形验证码与相关识别库………………………………………………………… 119
二、安装配置Tesserocr ………………………………………………………………… 120
三、安装Python 图片识别库…………………………………………………………… 123
四、使用Python 图片识别库…………………………………………………………… 123
思考与练习………………………………………………………………………………… 125
项目五 使用Scrapy 框架…………………………………………………………………… 126
任务 使用Scrapy 框架…………………………………………………………………… 126
一、了解Scrapy 框架…………………………………………………………………… 126
二、创建Scrapy 项目…………………………………………………………………… 129
三、配置Scrapy 项目…………………………………………………………………… 130
四、运行Scrapy 项目…………………………………………………………………… 131
五、保存数据到文件…………………………………………………………………… 132
思考与练习………………………………………………………………………………… 132
项目六 使用大数据采集工具……………………………………………………………… 135
任务一 认识大数据同步技术———DataX ………………………………………………… 135
一、了解DataX 的基本概念…………………………………………………………… 135
二、DataX 3. 0 的框架设计……………………………………………………………… 136
三、安装并配置DataX 3. 0 …………………………………………………………… 139
四、DataX 应用实例参考……………………………………………………………… 141
任务二 认识大数据采集技术———Kafka ………………………………………………… 143
一、了解Kafka ………………………………………………………………………… 143
二、Kafka 的安装与应用………………………………………………………………… 146
思考与练习………………………………………………………………………………… 147
拓展篇
项目七 爬取网络云课信息…………………………………………………………………… 150
任务 使用Scrapy 爬取网络云课数据…………………………………………………… 150
一、了解爬取项目……………………………………………………………………… 150
二、准备爬取项目……………………………………………………………………… 151
三、理解爬取思路……………………………………………………………………… 151
四、分析爬取项目……………………………………………………………………… 151
五、创建项目…………………………………………………………………………… 154
六、创建Item …………………………………………………………………………… 156
七、提取数据…………………………………………………………………………… 156
八、清洗数据…………………………………………………………………………… 160
九、存储数据…………………………………………………………………………… 161
十、搭建Cookies 池…………………………………………………………………… 163
十一、搭建IP 代理池…………………………………………………………………… 164
十二、启用MiddleWare ………………………………………………………………… 165
十三、运行项目………………………………………………………………………… 166
思考与练习………………………………………………………………………………… 168
附录A 缩略语………………………………………………………………………………… 170
附录B 思考与练习参考答案………………………………………………………………… 172
参考文献………………………………………………………………………………………… 179