图书介绍

Python数据爬取技术与实战手册【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Python数据爬取技术与实战手册
  • 郭卡;戴亮 著
  • 出版社: 北京:中国铁道出版社
  • ISBN:9787113245221
  • 出版时间:2018
  • 标注页数:304页
  • 文件大小:34MB
  • 文件页数:318页
  • 主题词:软件工具-程序设计-手册

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Python数据爬取技术与实战手册PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 最佳拍档:网络爬虫与Python语言1

1.1 什么是网络爬虫1

1.1.1 网络爬虫的定义2

1.1.2 网络爬虫的工作流程2

1.1.3 网络爬虫的分类3

1.1.4 为什么选择用Python编写网络爬虫4

1.1.5 编写爬虫的注意事项4

1.2 Python环境配置5

1.2.1 Python的安装5

1.2.2 Python第三方库的安装6

【示例1-1】使用包管理器安装科学计算库numpy6

【示例1-2】源代码方式安装xlrd库(使用setup.py文件)7

【示例1-3】源代码方式安装xlrd库(使用whl文件)8

1.2.3 Python开发工具的选择8

【示例1-4】将文本编辑器配置成Python开发工具(以Notepad++为例)12

1.3 Python基本语法13

1.3.1 Python书写规则13

1.3.2 Python基本数据类型18

【示例1-5】以列表a=['a','a','b','c','d','d','e']为例讲解List的基本操作21

【示例1-6】以列表a=[1,2,3,4,5,6,7,8]为例讲解数据型列表的属性分析23

【示例1-7】以字典a为例,讲解字典的基本操作25

1.3.3 Python独有数据生成方式:推导式29

1.3.4 函数30

【示例1-8】局部变量与全局变量重名的运行结果与解决方案31

1.3.5 条件与循环34

1.3.6 类与对象35

【示例1-9】请输出学生信息中某学生的班级、姓名和总分数35

1.3.7 Python 2代码转为Python 3代码36

【示例1-10】以文件test.py为例,介绍Python 2代码到Python 3代码的转化37

第2章 应知应会:网络爬虫基本知识38

2.1 网页的构成38

2.1.1 HTML基本知识39

2.1.2 网页中各元素的排布46

【示例2-1】以新浪博客文本为例,学习各类元素的排布规则46

2.2 正则表达式48

2.2.1 正则表达式简介48

2.2.2 Python语言中的正则表达式49

【示例2-2】正则表达式应用中,当匹配次数达到10万时,预先编译对正则表达式性能的提升51

2.2.3 综合实例:正则表达式的实际应用——在二手房网站中提取有用信息52

2.3 汉字编码问题54

2.3.1 常见编码简介54

2.3.2 常用编程环境的默认编码55

2.3.3 网页编码56

2.3.4 编码转换56

2.4 网络爬虫的行为准则57

2.4.1 遵循Robots协议57

2.4.2 网络爬虫的合法性59

第3章 静态网页爬取61

3.1 Python常用网络库61

3.1.1 urllib库62

【示例3-1】从众多代理IP中选取可用的IP63

【示例3-2】百度搜索“Python”url演示Parse模块应用66

3.1.2 综合实例:批量获取高清壁纸68

3.1.3 requests库71

【示例3-3】用requests实现豆瓣网站模拟登录72

3.1.4 综合实例:爬取历史天气数据预测天气变化74

3.2 网页解析工具77

3.2.1 更易上手:BeautifulSoup77

【示例3-4】解析HTML文档(以豆瓣读书《解忧杂货店》为例)78

3.2.2 更快速度:lxml81

3.2.3 BeautifulSoup与lxml对比82

【示例3-5】爬取豆瓣读书中近5年出版的评分7分以上的漫画82

【示例3-6】BeautifulSoup和lxml解析同样网页速度测试(基于网易新闻首页)85

3.2.4 综合实例:在前程无忧中搜索并抓取不同编程语言岗位的平均收入85

第4章 动态网页爬取89

4.1 AJAX技术89

4.1.1 获取AJAX请求90

4.1.2 综合实例:抓取简书百万用户个人主页91

4.2 Selenium操作浏览器97

4.2.1 驱动常规浏览器97

4.2.2 驱动无界面浏览器100

4.2.3 综合实例:模拟登录新浪微博并下载短视频101

4.3 爬取移动端数据103

4.3.1 Fiddler工具配置103

4.3.2 综合实例:Fiddle实际应用——爬取大角虫漫画信息105

第5章 统一架构与规范:网络爬虫框架111

5.1 最流行的网络爬虫框架:Scrapy111

5.1.1 安装须知与错误解决方案111

5.1.2 Scrapy的组成与功能112

5.2 综合实例:使用Scrapy构建观影指南118

5.2.1 网络爬虫准备工作119

5.2.2 编写Spider121

5.2.3 处理Item123

5.2.4 运行网络爬虫124

5.2.5 数据分析124

5.3 更易上手的网络爬虫框架:Pyspider126

5.3.1 创建Pyspider项目127

【示例5-1】利用Pyspider创建抓取煎蛋网项目并测试代码127

5.3.2 运行Pyspider项目129

第6章 反爬虫应对策略132

6.1 设置Headers信息132

6.1.1 User-Agent133

6.1.2 Cookie136

6.2 建立IP代理池138

6.2.1 建立IP代理池的思路138

6.2.2 建立IP代理池的步骤138

6.3 验证码识别140

6.3.1 识别简单的验证码141

【示例6-1】通过pytesseract库识别8个简单的验证码,并逐步提升准确率141

6.3.2 识别汉字验证码146

6.3.3 人工识别复杂验证码146

6.3.4 利用Cookie绕过验证码149

第7章 提升网络爬虫效率152

7.1 网络爬虫策略152

7.1.1 广度优先策略153

7.1.2 深度优先策略153

7.1.3 按网页权重决定爬取优先级154

7.1.4 综合实例:深度优先和广度优先策略效率对比(抓取慕课网实战课程地址)154

7.2 提升网络爬虫的速度158

7.2.1 多线程159

【示例7-1】使用4个线程同步抓取慕课网实战课程地址(基于深度优先策略)159

7.2.2 多进程161

7.2.3 分布式爬取162

7.2.4 综合实例:利用现有知识搭建分布式爬虫(爬取百度贴吧中的帖子)162

第8章 更专业的爬取数据存储与处理:数据库170

8.1 受欢迎的关系型数据库:MySQL170

8.1.1 MySQL简介170

8.1.2 MySQL环境配置171

8.1.3 MySQL的查询语法174

【示例8-1】使用MySQL查询语句从数据表Countries中选取面积大于10000km2的欧洲国家177

8.1.4 使用pymysql连接MySQL数据库178

8.1.5 导入与导出数据179

8.2 应对海量非结构化数据:MongoDB数据库180

8.2.1 MongoDB简介180

8.2.2 MongoDB环境配置182

8.2.3 MongoDB基本语法186

8.2.4 使用PyMongo连接MongoDB188

8.2.5 导入/导出JSON文件189

第9章 Python文件读取190

9.1 Python文本文件读写190

9.2 数据文件CSV192

9.3 数据交换格式JSON193

9.3.1 JSON模块的使用194

【示例9-1】请用JSON模块将data变量(包含列表、数字和字典的数组)转换成字符串并还原194

9.3.2 JSON模块的数据转换195

9.4 Excel读写模块:xlrd195

9.4.1 读取Excel文件196

9.4.2 写入Excel单元格197

9.5 PowerPoint文件读写模块:pptx197

9.5.1 读取pptx197

9.5.2 写入pptx198

9.6 重要的数据处理库:Pandas库199

9.6.1 使用pandas库处理CSV文件200

9.6.2 使用pandas库处理JSON文件200

9.6.3 使用pandas库处理HTML文件202

【示例9-2】用read_html()将某二手房网站表格中的数据提取出来203

9.6.4 使用pandas库处理SQL文件203

9.7 调用Office软件扩展包:win32com204

9.7.1 读取Excel文件204

9.7.2 读取Word文件205

9.7.3 读取PowerPoint文件205

9.8 读取PDF文件206

9.8.1 读取英文PDF文档206

9.8.2 读取中文PDF文档208

9.8.3 读取扫描型PDF文档210

9.9 综合实例:自动将网络文章转化为PPT文档211

第10章 通过API获取数据214

10.1 免费财经API——TuShare214

10.1.1 获取股票交易数据215

【示例10-1】获取某股票2017年8月份的周K线数据215

10.1.2 获取宏观经济数据217

10.1.3 获取电影票房数据219

10.2 新浪微博API的调用220

10.2.1 创建应用220

10.2.2 使用API222

10.3 调用百度地图API225

10.3.1 获取城市经纬度226

【示例10-2】使用百度地图API获取南京市的经纬度信息226

10.3.2 定位网络IP226

【示例10-3】使用百度API定位IP地址(223.112.112.144)226

10.3.3 获取全景静态图227

10.4 调用淘宝API228

第11章 网络爬虫工具231

11.1 使用Excel采集网页数据231

11.1.1 抓取网页中的表格232

11.1.2 抓取非表格的结构化数据233

11.2 使用Web Scraper插件237

11.2.1 安装Web Scraper237

11.2.2 Web Scraper的使用238

【示例11-1】使用Web Scraper爬取当当网小说书目238

11.3 商业化爬取工具240

11.3.1 自定义采集241

【示例11-2】利用网络爬虫软件八爪鱼自定义采集当当网图书信息241

11.3.2 网站简易采集245

【示例11-3】利用网络爬虫软件八爪鱼的网络简易采集方式抓取房天下网中的合肥新房房价数据245

第12章 数据分析工具:科学计算库248

12.1 单一类型数据高效处理:Numpy库248

12.1.1 ndarray数组248

【示例12-1】对一维ndarray数组a进行读取、修改和切片操作249

【示例12-2】对多维ndarray数组b进行读取、修改和切片操作250

【示例12-3】对多维ndarray数组n进行矩阵运算(拼接、分解、转置、行列式、求逆和点乘)252

12.1.2 Numpy常用函数253

【示例12-4】对多维ndarray数组a进行统计操作253

【示例12-5】对一维ndarray数组a进行数据处理操作(去重、直方图统计、相关系数、分段、多项式拟合)256

12.1.3 Numpy性能优化257

12.2 复杂数据全面处理:Pandas库258

12.2.1 Pandas库中的4种基础数据结构258

12.2.2 Pandas使用技巧264

【示例12-6】对比普通for循环遍历与iterrows()遍历方法的速度差异264

12.3 Python机器学习库:Scikit-learn268

【示例12-7】以鸢尾花数据为例,使用Sklearn进行监督学习的基本建模过程(决策树模型)269

第13章 掌握绘图软件:将数据可视化271

13.1 应用广泛的数据可视化:Excel绘图271

13.1.1 绘制(对比)柱形图272

13.1.2 绘制饼图并添加标注273

13.1.3 其他图形275

13.1.4 Excel频率分布直方图276

【示例13-1】利用Excel绘制全国各省市城镇人员平均工资频率分布直方图276

13.2 适合处理海量数据:Tableau绘图278

13.2.1 基本操作:导入数据278

13.2.2 绘制(多重)柱状对比图279

13.2.3 智能显示:图形转换281

13.2.4 绘制频率分布直方图281

【示例13-2】利用Tableau绘制2015年我国城镇就业人员平均工资频率分布直方图281

13.3 完善的二维绘图库:Matplotlib/Seaborn283

13.3.1 使用Matplotlib绘制函数图表283

13.3.2 使用Matplotlib绘制统计图表285

13.4 优化:Seaborn的使用289

13.5 综合实例:利用Matplotlib构建合肥美食地图293

13.5.1 绘制区域地图293

13.5.2 利用百度地图Web服务API获取美食地址294

13.5.3 数据分析298

13.5.4 绘制热力图完善美食地图展示300

热门推荐