发表于2024-11-13
Python网络数据爬取及分析从入门到精通(爬取篇)
这是一套以实例为主、使用Python语言讲解网络数据爬虫及分析的实战指南。本套书通俗易懂,涵盖了Python基础知识、数据爬取、数据分析、数据预处理、数据可视化、数据存储、算法评估等多方面知识,每一部分知识都从安装过程、导入扩展包到算法原理、基础语法,再结合实例进行详细讲解。
本套书包括两本:《Python网络数据爬取及分析从入门到精通(爬取篇)》和《Python网络数据爬取及分析从入门到精通(分析篇)》。
看完此书,真正让你做到从入门到精通。
Python网络数据爬取及分析从入门到精通(爬取篇)
本书采用通俗易懂的语言、丰富多彩的实例,详细介绍了使用Python语言进行网络数据爬取的知识,主要内容包括Python语法、正则表达式、BeautifulSoup技术、Selenium技术、Scrapy框架、数据库存储等,同时详细介绍了爬取网站和博客内容、电影数据信息、招聘信息、在线百科知识、微博内容、农产品信息等实例。
书中所有知识点都结合经典实例进行介绍,涉及的实例都给出了详细的分析流程,程序代码都给出了具体的注释,同时采用图文结合的形式讲解,让读者能更加轻松地领会Python网络数据爬虫的精髓,并快速提高自己的开发能力。
本书即可作为Python开发入门者的自学用书,也可作为高等院校数据爬取、数据分析、数据挖掘、大数据等相关专业的教学参考书或实验指导书,还可供Python开发人员查阅、参考。
杨秀璋,毕业于北京理工大学软件学院,长期从事Web数据挖掘、Python数据分析、网络数据爬取工作及研究。他现任教于贵州财经大学信息学院,主讲“数据挖掘与分析”“大数据技术及应用”课程,并从事大数据分析、数据挖掘、知识图谱等领域的项目研究与开发;有多年的Python编程、数据分析及知识图谱研究经验,实战经验较为丰富。
此外,他还积极分享编程知识和开源代码编写经验,先后在CSDN、博客园、阿里云栖社区撰写博客,仅在CSDN就分享了300多篇原创文章,开设了11个专栏,累计阅读量超过250万人次。
第1章 网络数据爬取概述…………………………………………………………… 1
1.1 网络爬虫 ……………………………………………………………………… 1
1.2 相关技术 ……………………………………………………………………… 3
1.2.1 HTTP …………………………………………………………………… 3
1.2.2 HTML…………………………………………………………………… 3
1.2.3 Python …………………………………………………………………… 5
1.3 本章小结 ……………………………………………………………………… 5
参考文献……………………………………………………………………………… 5
第2章 Python知识初学 …………………………………………………………… 6
2.1 Python简介 …………………………………………………………………… 6
2.2 基础语法……………………………………………………………………… 11
2.2.1 缩进与注释……………………………………………………………… 11
2.2.2 变量与常量……………………………………………………………… 12
2.2.3 输入与输出……………………………………………………………… 14
2.2.4 赋值与表达式…………………………………………………………… 16
2.3 数据类型……………………………………………………………………… 16
2.3.1 数字类型………………………………………………………………… 16
2.3.2 字符串类型……………………………………………………………… 17
2.3.3 列表类型………………………………………………………………… 17
2.3.4 元组类型………………………………………………………………… 19
2.3.5 字典类型………………………………………………………………… 19
2.4 条件语句……………………………………………………………………… 19
2.4.1 单分支…………………………………………………………………… 20
2.4.2 二分支…………………………………………………………………… 20
2.4.3 多分支…………………………………………………………………… 21
2.5 循环语句……………………………………………………………………… 22
2.5.1 while循环 ……………………………………………………………… 22
2.5.2 for循环 ………………………………………………………………… 24
2.5.3 break和continue语句 ………………………………………………… 24
2.6 函 数………………………………………………………………………… 25
2.6.1 自定义函数……………………………………………………………… 26
2.6.2 常见内部库函数………………………………………………………… 27
2.6.3 第三方库函数…………………………………………………………… 29
2.7 字符串操作…………………………………………………………………… 30
2.8 文件操作……………………………………………………………………… 32
2.8.1 打开文件………………………………………………………………… 32
2.8.2 读/写文件 ……………………………………………………………… 32
2.8.3 关闭文件………………………………………………………………… 33
2.8.4 循环遍历文件…………………………………………………………… 34
2.9 面向对象……………………………………………………………………… 34
2.10 本章小结 …………………………………………………………………… 36
参考文献 …………………………………………………………………………… 36
第3章 正则表达式爬虫之牛刀小试 ……………………………………………… 37
3.1 正则表达式…………………………………………………………………… 37
3.2 Python网络数据爬取的常用模块 ………………………………………… 39
3.2.1 urllib模块 ……………………………………………………………… 39
3.2.2 urlparse模块 …………………………………………………………… 42
3.2.3 requests模块 …………………………………………………………… 44
3.3 正则表达式爬取网络数据的常见方法……………………………………… 45
3.3.1 爬取标签间的内容……………………………………………………… 45
3.3.2 爬取标签中的参数……………………………………………………… 49
3.3.3 字符串处理及替换……………………………………………………… 50
3.4 个人博客爬取实例…………………………………………………………… 52
3.4.1 分析过程………………………………………………………………… 52
3.4.2 代码实现………………………………………………………………… 57
3.5 本章小结……………………………………………………………………… 59
参考文献 …………………………………………………………………………… 59
第4章 BeautifulSoup技术 ………………………………………………………… 60
4.1 安装BeautifulSoup ………………………………………………………… 60
4.1.1 Python 2.7安装BeautifulSoup ……………………………………… 60
4.1.2 pip安装扩展库 ………………………………………………………… 63
4.2 快速开始BeautifulSoup解析 ……………………………………………… 67
4.2.1 BeautifulSoup解析 HTML …………………………………………… 68
4.2.2 简单获取网页标签信息………………………………………………… 71
4.2.3 定位标签并获取内容…………………………………………………… 72
4.3 深入了解BeautifulSoup …………………………………………………… 73
4.3.1 BeautifulSoup对象 …………………………………………………… 74
4.3.2 遍历文档树……………………………………………………………… 79
4.3.3 搜索文档树……………………………………………………………… 82
4.4 BeautifulSoup简单爬取个人博客网站 …………………………………… 84
4.5 本章小结……………………………………………………………………… 87
参考文献 …………………………………………………………………………… 87
第5章 BeautifulSoup爬取电影信息 ……………………………………………… 88
5.1 分析网页DOM 树结构……………………………………………………… 88
5.1.1 分析网页结构及简单爬取……………………………………………… 88
5.1.2 定位节点及网页翻页分析……………………………………………… 91
5.2 爬取豆瓣电影信息…………………………………………………………… 94
5.3 链接跳转分析及详情页面爬取……………………………………………… 98
5.4 本章小结 …………………………………………………………………… 104
参考文献…………………………………………………………………………… 104
第6章 Python数据库知识 ……………………………………………………… 105
6.1 MySQL数据库 …………………………………………………………… 105
6.1.1 MySQL的安装与配置 ……………………………………………… 105
6.1.2 SQL基础语句详解 …………………………………………………… 112
6.2 Python操作 MySQL数据库 ……………………………………………… 119
6.2.1 安装 MySQL扩展库 ………………………………………………… 119
6.2.2 程序接口DB-API …………………………………………………… 121
6.2.3 Python调用 MySQLdb扩展库 ……………………………………… 122
6.3 Python操作SQLite 3数__________据库 …………………………………………… 126
6.4 本章小结 …………………………………………………………………… 129
参考文献…………………………………………………………………………… 129
第7章 基于数据库存储的BeautifulSoup招聘爬虫 …………………………… 130
7.1 知识图谱和智联招聘 ……………………………………………………… 130
7.2 BeautifulSoup爬取招聘信息 ……………………………………………… 132
7.2.1 分析网页超链接及跳转处理 ………………………………………… 132
7.2.2 DOM 树节点分析及网页爬取 ……………………………………… 135
7.3 Navicat for MySQL工具操作数据库 …………………………………… 137
7.3.1 连接数据库 …………………………………………………………… 137
7.3.2 创建数据库 …………………………………………………………… 139
7.3.3 创建表 ………………………………………………………………… 141
7.3.4 数据库增删改查操作 ………………………………………………… 143
7.4 MySQL数据库存储招聘信息 …………………………………………… 146
7.4.1 MySQL操作数据库 ………………………………………………… 146
7.4.2 代码实现 ……………………………………………………………… 148
7.5 本章小结 …………………………………………………………………… 153
参考文献…………………………………………………………………………… 153
第8章 Selenium技术……………………………………………………………… 154
8.1 初识Selenium ……………………………………………………………… 154
8.1.1 安装Selenium ………………………………………………………… 155
8.1.2 安装浏览器驱动 ……………………………………………………… 156
8.1.3 PhantomJS …………………………………………………………… 158
8.2 快速开始Selenium解析…………………………………………………… 159
8.3 定位元素 …………………………………………………………………… 162
8.3.1 通过id属性定位元素 ………………………………………………… 163
8.3.2 通过name属性定位元素 …………………………………………… 165
8.3.3 通过XPath路径定位元素 …………………………………………… 166
8.3.4 通过起链接文本定位元素 …………………………………………… 168
8.3.5 通过标签名定位元素 ………………………………………………… 169
8.3.6 通过类属性名定位元素 ……………………………………………… 170
8.3.7 通过CSS选择器定位元素 …………………………………………… 170
8.4 常用方法和属性 …………………………………………………………… 170
8.4.1 操作元素的方法 ……………………………………………………… 170
8.4.2 WebElement常用属性 ……………………………………………… 174
8.5 键盘和鼠标自动化操作 …………………………………………………… 175
8.5.1 键盘操作 ……………………………………………………………… 175
8.5.2 鼠标操作 ……………………………………………………………… 177
8.6 导航控制 …………………………………………………………………… 178
8.6.1 下拉菜单交互操作 …………………………………………………… 178
8.6.2 Window和Frame间对话框的移动 ………………………………… 179
8.7 本章小结 …………………………………………………………………… 180
参考文献…………………………………………………………………………… 180
第9章 Selenium爬取在线百科知识……………………………………………… 181
9.1 三大在线百科 ……………………………………………………………… 181
9.1.1 维基百科 ……………………………………………………………… 181
9.1.2 百度百科 ……………………………………………………………… 183
9.1.3 互动百科 ……………………………………………………………… 184
9.2 Selenium爬取维基百科 …………………………………………………… 185
9.2.1 网页分析 ……………………………………………………………… 185
9.2.2 代码实现 ……………………………………………………………… 190
9.3 Selenium爬取百度百科 …………………………………………………… 190
9.3.1 网页分析 ……………………………………………………………… 190
9.3.2 代码实现 ……………………………………………………………… 195
9.4 Selenium爬取互动百科 …………………………………………………… 198
9.4.1 网页分析 ……………………………………………………………… 198
9.4.2 代码实现 ……………………………………………………………… 200
9.5 本章小结 …………………………………………………………………… 202
参考文献…………………………………………………………………………… 203
第10章 基于数据库存储的Selenium博客爬虫 …………………………………… 204
10.1 博客网站…………………………………………………………………… 204
10.2 Selenium爬取博客信息 ………………………………………………… 206
10.2.1 Forbidden错误 ……………………………………………………… 206
10.2.2 分析博客网站翻页方法……………………………………………… 208
10.2.3 DOM 树节点分析及网页爬取 ……………………………………… 210
10.3 MySQL数据库存储博客信息 …………………………………………… 212
10.3.1 Navicat for MySQL创建表 ………………………………………… 213
10.3.2 Python操作 MySQL数据库 ……………………………………… 214
10.3.3 代码实现……………………………………………………………… 216
10.4 本章小结…………………………………………………………………… 222
第11章 基于登录分析的Selenium微博爬虫 ……………………………………… 223
11.1 登录验证…………………………………………………………………… 223
11.2 初识微博爬虫……………………………………………………………… 226
11.2.1 微 博………………………………………………………………… 226
11.2.2 登录入口……………………………………………………………… 227
Python网络数据爬取及分析从入门到精通(爬取篇) 下载 mobi pdf epub txt 电子书 格式 2024
Python网络数据爬取及分析从入门到精通(爬取篇) 下载 mobi epub pdf 电子书Python网络数据爬取及分析从入门到精通(爬取篇) mobi epub pdf txt 电子书 格式下载 2024