新書推薦:
《
能成事的团队
》
售價:NT$
510.0
《
现代无人机鉴赏(珍藏版)
》
售價:NT$
356.0
《
汗青堂丛书·晚清风云(4册套装):帝国的切口 清朝与中华传统文化 太平天国运动史 冲击与回应
》
售價:NT$
1948.0
《
穿在身上的历史:世界服饰图鉴(增订珍藏版)
》
售價:NT$
2540.0
《
历史的严妆:解读道学阴影下的南宋史学(中华学术·有道)
》
售價:NT$
500.0
《
海外中国研究·江南:中国文雅的源流
》
售價:NT$
347.0
《
迟缓的巨人:“大而不能倒”的反思与人性化转向
》
售價:NT$
352.0
《
我们去往何方:身体、身份和个人价值
》
售價:NT$
305.0
|
編輯推薦: |
·可作为高等职业院校、职业本科院校大数据技术及相关专业的教材
·从基础的Python环境搭建、网络基础知识入手,结合实例,由浅入深地讲解了常用爬虫库和解析库、数据持久化保存、requests库操作、Selenium和ChromeDriver操作、Scrapy爬虫框架的基本原理和操作网络爬虫的常用技术和方法,以及通过Flask和ECharts实现数据可视化的方法等内容。
·提供了爬虫案例和源代码,以便读者能够更加直观和快速地学会爬虫的编写技巧。
|
內容簡介: |
本书共分两部分:第一部分是网络数据采集与预处理的基础理论实践,包括任务1~任务6,主要讲解如何使用Python编写网络数据采集和预处理程序,内容包括Python环境搭建,Python基础语法、语句与函数,网络基础知识,常用网络数据采集与预处理库、解析库,数据持久化保存,以及requests库、numpy库、pandas库、Selenium技术、ChromeDriver技术和Scrapy技术的应用方式。第二部分是网络数据采集与预处理的综合案例,包括任务7~任务9,主要讲解requests库数据采集与ECharts可视化技术相结合以展示数据,并持久化保存数据、预处理数据的应用案例;Selenium和ChromeDriver技术相结合模拟登录,采集动态和静态数据,并持久化保存数据和预处理数据的应用案例;Hadoop平台的Flume日志数据采集应用案例,充分呈现了大数据采集与预处理主流技术、可视化技术的主要功能和特点。
本书可作为高等职业院校、职业本科院校大数据技术及相关专业的教材,也可作为有一定Python编程经验并且对数据采集与预处理技术感兴趣的工程技术人员的参考用书。
|
關於作者: |
李俊翰,重庆电子科技职业大学副教授,骨干教师,高级双师型教师,系统集成项目管理工程师。作为主研参与大数据技术与应用国家专业教学资源库建设工作,主持子课程《应用程序开发基础(Java)》;作为主研参与第二批“智慧助老”优质工作案例;作为主研获得2022重庆市教学成果“一等奖”;发表SCI1篇,中文核心期刊4篇;作为指导教师,指导学生参加2019全国职业院校技能大赛“大数据技术与应用”赛项获二等奖,2019、2020和2021重庆市职业院校技能竞赛“大数据技术与应用”赛项获得一等奖3项;主编和参编多部教材。
|
目錄:
|
前言
第一部分基础理论实践
任务1Python环境搭建——编写“Welcome to Python!”程序
1.1任务描述
1.2Python概述
1.3Python编程环境搭建
1.3.1在Windows环境下的安装
1.3.2在 Linux 环境下的安装
1.3.3在macOS环境下的安装
1.4安装集成开发环境PyCharm
1.4.1PyCharm概述
1.4.2PyCharm的安装和运行
1.5Python基础语法
1.5.1整型
1.5.2浮点型
1.5.3字符串
1.5.4列表
1.5.5集合
1.5.6字典
1.5.7元组
1.6Python语句与函数
1.6.1条件判断语句
1.6.2循环语句
1.6.3自定义函数
1.7任务实现
1.8小结
1.9习题
任务2实现简单数据采集——采集业务网站页面数据
2.1任务描述
2.2爬虫基础知识
2.2.1网络爬虫概述
2.2.2爬虫的法律和道德
2.2.3Python爬虫的工作过程
2.3网络知识基础
2.3.1HTML
2.3.2URI和URL
2.3.3HTTP
2.3.4Request和Response
2.4requests库
2.4.1requests库概述
2.4.2requests库安装
2.4.3requests库的基本用法
2.5lxml库和BeautifulSoup库
2.5.1lxml库概述
2.5.2BeautifulSoup库概述
2.5.3lxml库和BeautifulSoup库安装
2.5.4lxml库和BeautifulSoup库的基本用法
2.6任务实现
2.7数据预处理基础
2.7.1数据预处理概述
2.7.2数据清洗
2.7.3数据集成
2.7.4数据转换
2.7.5数据规约
2.7.6数据预处理工具
2.8小结
2.9习题
任务3存储数据——学生就业信息数据读写和数据持久化
3.1任务描述
3.2MySQL
3.2.1MySQL概述
3.2.2MySQL安装
3.2.3MySQL Workbench的操作
3.3PyMySQL
3.3.1PyMySQL和MySQL的区别
3.3.2PyMySQL安装
3.3.3PyMySQL的用法
3.4CSV和JSON
3.4.1CSV概述
3.4.2输出CSV文件头部
3.4.3使用Python读取CSV文件数据
3.4.4使用Python写入CSV文件数据
3.4.5JSON概述
3.4.6使用Python读取JSON文件数据
3.4.7使用Python写入JSON文件数据
3.5任务实现
3.6小结
3.7习题
任务4requests库技术应用案例——静态数据和动态数据采集
4.1任务描述
4.2静态数据和动态数据
4.2.1静态数据基本概念
4.2.2动态数据基本概念
4.2.3AJAX的起源
4.2.4AJAX概述
4.2.5AJAX的特点
4.3子任务1:业务网站A静态数据采集
4.3.1页面分析
4.3.2获取静态数据
4.3.3数据持久化保存
4.3.4网页分页爬取的翻页操作实现
4.3.5数据预处理
4.3.6任务实现
4.4子任务2:业务网站B静态数据采集
4.4.1页面分析
4.4.2获取静态数据
4.4.3数据持久化保存
4.4.4数据预处理
4.4.5任务实现
4.5子任务3:业务网站C动态数据采集
4.5.1页面分析
4.5.2获取动态数据
4.5.3数据持久化保存
4.5.4任务实现
4.6子任务4:业务网站D静态数据采集
4.6.1业务网站D概述
4.6.2业务网站D的基本用法
4.6.3Web API概述
4.6.4业务网站D开放API的数据特点
4.6.5业务网站D的API请求数据
4.6.6获取API的响应数据
4.6.7处理API的响应数据
4.6.8任务实现
4.7小结
4.8习题
任务5ChromeDriver和Selenium技术应用案例——网站数据采集
5.1任务描述
5.2ChromeDriver
5.2.1ChromeDriver概述
5.2.2ChromeDriver安装
5.3Selenium
5.3.1Selenium概述
5.3.2Selenium安装
5.4任务实现:业务网站数据采集
5.4.1页面分析
5.4.2数据获取
5.4.3数据持久化保存
5.5小结
5.6习题
任务6Scrapy技术应用案例——框架式数据采集
6.1任务描述
6.2Scrapy
6.2.1Scrapy概述
6.2.2Scrapy工作原理
6.2.3Scrapy安装
6.3Scrapy组件
6.3.1Selector
6.3.2Spider
6.3.3Downloader Middleware
6.3.4Item Pipeline
6.4任务实现:业务网站数据采集
6.4.1页面分析
6.4.2数据获取
6.4.3数据持久化保存
6.5小结
6.6习题
第二部分综合案例
任务7数据采集与可视化案例
7.1任务描述
7.2数据可视化技术
7.2.1Flask概述
7.2.2ECharts概述
7.3任务实现:业务网站二手房数据采集与可视化
7.3.1页面分析
7.3.2数据获取
7.3.3数据持久化保存
7.3.4数据可视化
7.3.5数据探索与转换
7.3.6任务实现
7.4小结
7.5习题
任务8爬取指定业务网站案例8.1任务描述
8.2页面分析
8.3模拟登录
8.3.1模拟登录的总体步骤
8.3.2模拟登录业务逻辑和代码详解
8.4获取静态数据
8.4.1静态数据获取的总体步骤
8.4.2静态数据获取业务逻辑和代码详解
8.5获取动态数据
8.5.1动态数据获取的总体步骤
8.5.2动态数据获取业务逻辑和代码详解
8.6数据持久化保存
8.7数据预处理
8.8小结
8.9习题
任务9Hadoop平台的Flume日志数据采集应用案例
9.1任务描述
9.2Hadoop介绍
9.2.1Hadoop核心组件和工作原理
9.2.2Hadoop生态圈简介
9.3Flume介绍
9.4Flume安装和配置
9.4.1Flume的安装
9.4.2Flume的配置
9.5Flume的应用
9.5.1采集文件夹下的增量数据到HDFS
9.5.2采集TCP端口数据到控制台
9.6小结
9.7习题
参考文献
|
內容試閱:
|
为什么写这本书
在这个数据爆炸的时代,不论是提供底层基础架构的云计算,还是实现各种人工智能的应用,都离不开其核心的源泉:数据。由于网络中数据太多、太宽泛,人们需要通过特殊的技术和方法实现在海量的数据中搜集到真正有价值的数据,从而为下一步的数据清洗、分析和可视化等提供数据支撑。网络爬虫应运而生。
本书从基础的Python环境搭建、网络基础知识入手,结合实例,由浅入深地讲解了如下内容:常用爬虫库和解析库、数据持久化保存、requests库操作、Selenium和ChromeDriver操作、Scrapy爬虫框架的基本原理和操作网络爬虫的常用技术和方法,以及通过Flask和ECharts实现数据可视化的方法。本书提供了爬虫案例和源代码,以便读者能够更加直观和快速地学会爬虫的编写技巧。
希望本书对大数据从业人员或者网络爬虫爱好者具有一定的参考价值,他们能够通过学习本书,更好地解决工作和学习中遇到的问题,少走弯路。
读者对象
● 计算机相关专业的学生。
● Python网络爬虫初学者。
● 网络爬虫工程师。
● 大数据及数据挖掘工程师。
● 其他对Python或网络爬虫感兴趣的人员。
内容介绍
本书分为两大部分:基础理论实践(任务1~任务6)和综合案例(任务7~任务9)。
任务1:讲解了Python编程环境搭建,Python基础语法、语句与函数,让读者能够了解和掌握Python的基础知识。
任务2:通过实现简单数据采集,阐述了爬虫的基础知识、工作过程、网络基础知识,以及requests、lxml和BeautifulSoup库,让读者能够更好地理解网络爬虫。
任务3:通过实现学生就业信息数据读写和数据持久化,阐述了MySQL的基本知识、安装和操作,并使用PyMySQL在Python环境中实现了对CSV和JSON格式数据的读写操作。
任务4:在Chrome浏览器中通过requests库自定义编写爬虫代码,获取网站内指定的静态和动态数据,并通过使用BeautifulSoup库实现对数据的解析,最后使用pymysql库和pandas实现数据的持久化操作。
任务5:首先通过Chrome浏览器综合分析业务网站新房网页结构和内容,使用Selenium和ChromeDriver技术来实现业务网站新房网页数据采集。然后通过进一步分析主页,获取字段为房屋名称(name)、地址(location)、价格(price)、房屋面积(size)等数据。最后,使用pymysql库在MySQL数据管理系统中创建指定的数据库house_database 和数据表house_info,实现数据的持久化存储。
任务6:使用Scrapy爬虫框架爬取业务网站静态数据,主要介绍了Scrapy的基本内容和工作原理,通过对Scrapy安装和Scrapy各组件的详细介绍,读者能够系统掌握Scrapy的使用方法。
任务7:综合介绍数据采集与可视化案例。本案例通过requests库自定义编写爬虫代码,获取网站内指定数据,并通过BeautifulSoup库实现对数据的解析,然后使用pymysql库实现对数据的持久化操作,最后,使用Flask和ECharts实现数据可视化。
任务8:综合介绍Selenium和ChromeDriver模拟登录,动态、静态数据采集案例。本案例通过Selenium和ChromeDriver自定义编写爬虫代码,在实现网站模拟登录后,获取网站内指定的动态和静态数据,最后使用pymysql库实现数据的持久化操作。
任务9:综合介绍Hadoop和Flume基础安装、配置和应用案例。本案例通过模拟两个业务场景,即电商平台的Web日志记录采集和基于TCP端口的日志记录采集,实现了使用Flume对Web日志文件夹中的数据文件进行监控和采集,对TCP端口的日志记录进行采集,对数据更新事件进行监控。
勘误和支持
由于编者水平有限,书中难免有一些错误或不准确的地方,恳请各位读者不吝指正。本书涉及的所有技术内容都只能用于教学,不能用于其他。
致谢
本书由重庆电子科技职业大学李俊翰、武春岭担任主编,重庆电子科技职业大学胡心雷、赵丽娜、黄伟、王正霞、路亚担任副主编,重庆翰海睿智大数据科技有限公司陈继、重庆疾风步信息技术有限公司冉星、重庆电子科技职业大学夏书林、雷翠红和赵勇吉担任参编。
感谢为本书做出贡献的每一个人。谨以此书献给热爱Python网络数据采集与预处理的朋友们!
编者
|
|