趣玩Python:自动化办公真简单(双色+视频版)
定 价:89 元
- 作者:关东升
- 出版时间:2021/11/1
- ISBN:9787121422973
- 出 版 社:电子工业出版社
- 中图法分类:TP311.561
- 页码:280
- 纸张:
- 版次:01
- 开本:16开
本书以数据收集→数据清洗→数据分析→数据可视化→根据数据可视化结果(即图表)做决策为脉络,介绍Python在实际工作场景中的应用,侧重于用Python解决工作中的数据处理问题,并通过实战形式讲解如何用Python实现数据收集、数据清洗、数据分析及可视化等工作。本书还详细讲解了Python自动化办公方面的内容,包括:Excel自动化、Word自动化、PPT自动化、PDF文件处理、图形图像处理和RPA(机器人流程自动化),并介绍了GUI技术和应用程序打包相关知识。本书秉承有趣、有料、好玩、好用的理念,特意设计了两个人物角色,通过这两个人物角色的轻松对话、搞笑形象及夸张动作,把复杂的技术问题讲解得深入浅出,非常适合广大读者阅读。
关东升一个在IT领域摸爬滚打20多年的老程序员、软件架构师、高级培训讲师、IT作家。熟悉Java、Kotlin、Python、iOS、Android、游戏开发、数据库开发与设计、软件架构设计等多种IT技术。参与设计和开发北京市公交一卡通百亿级大型项目,开发国家农产品追溯系统、金融系统微博等移动客户端项目。曾为中国移动、中国联通、南方航空、中国石油、工商银行、平安银行和天津港务局等企事业单位授课。著有《Java从小白到大牛》《Kotlin从小白到大牛》《Python从小白到大牛》《看漫画学Python》等40多部计算机书籍。
第1章 千里之行,始于足下——Python基础 1
1.1 Python解释器 2
1.2 PyCharm开发工具 3
1.2.1 下载和安装 4
1.2.2 设置PyCharm工具 5
1.3 第一个Python程序 7
1.3.1 创建项目 7
1.3.2 创建Python代码文件 9
1.3.3 编写代码 10
1.3.4 运行程序 11
1.4 文本编辑工具+Python解释器实现 11
1.4.1 编写代码 11
1.4.2 运行程序 12
1.4.3 代码解释 13
1.5 Python中的基础语法 14
1.5.1 标识符 14
1.5.2 关键字 15
1.5.3 变量声明 15
1.5.4 语句 15
1.5.5 代码块 16
1.5.6 模块 16
1.6 数据类型与运算符 17
1.6.1 数据类型 17
1.6.2 运算符 19
1.7 控制语句 22
1.7.1 分支语句 22
1.7.2 循环语句 24
1.7.3 跳转语句 27
1.8 序列 28
1.8.1 索引操作 28
1.8.2 序列切片 29
1.8.3 可变序列——列表 30
1.8.4 不可变序列——元组 31
1.8.5 列表推导式 32
1.9 集合 33
1.9.1 创建集合 33
1.9.2 集合推导式 34
1.10 字典 34
1.10.1 创建字典 35
1.10.2 字典推导式 36
1.11 字符串 36
1.11.1 字符串的表示方式 36
1.11.2 将字符串格式化 38
1.11.3 正则表达式 39
1.12 函数 40
1.12.1 匿名函数与lambda表达式 41
1.12.2 数据处理中的两个常用函数 42
1.13 文件操作与目录管理 44
1.13.1 文件操作 44
1.13.2 文本文件读写 46
1.13.3 二进制文件读写 47
1.13.4 os模块 48
1.13.5 os.path模块 49
1.14 异常处理机制 51
1.14.1 捕获异常 51
1.14.2 释放资源 52
第2章 让“虫子”帮你收集数据——网络爬虫技术 56
2.1 数据从哪里来——收集数据 56
2.2 收集股票的历史交易数据 58
2.3 自动爬取数据 60
2.4 从繁杂的HTML代码中解析数据——使用BeautifulSoup库 62
2.5 爬不到数据怎么办——使用Selenium工具 68
2.5.1 Ajax动态数据 70
2.5.2 使用Selenium爬取数据 70
2.6 有验证码怎么办 74
2.6.1 验证码概述 74
2.6.2 验证码识别 74
2.6.3 安装OCR引擎Tesseract 75
2.6.4 安装pytesseract 76
2.6.5 安装Pillow库 77
2.6.6 安装OpenCV 78
2.6.7 验证码识别前的图像预处理 78
2.6.8 验证码识别过程 79
2.7 实战训练:电网考试平台的验证码识别 81
2.7.1 配置自己的Web服务器 81
2.7.2 启动Web服务器 82
2.7.3 使用Selenium模拟登录过程 82
2.8 提高“虫子”的工作效率 86
第3章 洗一洗“脏数据”——数据清洗 89
3.1 数据清洗那些事儿 89
3.2 访问Excel文件库——xlwings库 90
3.2.1 xlwings库中对象的层次关系 91
3.2.2 打开Excel文件并读取其单元格数据 91
3.2.3 如何获取表格区域 93
3.2.4 获取表格行数和列数 96
3.2.5 转置表格 97
3.2.6 单元格默认的数据类型 98
3.2.7 写入单元格数据 99
3.2.8 设置单元格样式 102
3.2.9 这样遍历单元格太麻烦了 104
3.2.10 删除列 105
3.2.11 删除行 106
3.2.12 调用VBA宏批量删除重复的数据 107
3.2.13 找出格式不统一的数据 110
3.3 填充缺失的值 111
3.3.1 固定值填充 112
3.3.2 平均值填充 113
第4章 把“宝贝”收好了——数据存储 115
4.1 读取CSV文件 116
4.2 将爬取的数据保存为CSV文件 117
4.3 SQLite数据库 118
4.4 使用GUI管理工具管理SQLite数据库 119
4.5 sqlite3模块API 121
4.6 将爬取的数据保存到SQLite数据库 122
4.7 在数据库中查询数据 124
第5章 找出隐藏在数据中的“黄金屋”——数据分析 126
5.1 数据分析那些事儿 126
5.2 使用Excel进行数据分析 127
5.2.1 老板让我找出北京周边的房价信息 127
5.2.2 找出北京周边房屋面积大于120m2的小区 129
5.2.3 找出东城区和西城区房屋面积大于120m2的小区 130
5.2.4 找出有北京最高房价的小区 131
5.3 让“熊猫”帮我们分析数据——使用pandas库 132
5.3.1 Series数据结构 132
5.3.2 DataFrame数据结构 134
5.4 使用pandas库读取Excel文件 136
5.4.1 举个“栗子”:从Excel文件中读取全国总人口数据 137
5.4.2 跳过头部行和尾部行 138
5.4.3 当“熊猫”遇到CSV文件 139
5.4.4 当“熊猫”遇到SQLite 141
5.4.5 使用pandas库写入数据到CSV文件 143
5.4.6 使用pandas库写入数据到Excel文件 144
5.4.7 使用pandas库找出各城区有最高房价的小区 145
5.4.8 按照各城区的平均房价排序 146
5.5 数据分析与数据透视表的故事 148
第6章 一图抵万言——数据可视化 151
6.1 数据可视化那些事儿 151
6.2 使用Matplotlib库绘制图表 152
6.2.1 安装Matplotlib库 152
6.2.2 图表的基本构成要素 152
6.2.3 绘制城区最高房价柱状图 153
6.2.4 北京房价区间占比饼状图 155
6.2.5 北京各城区房价分布散点图 157
6.2.6 贵州茅台股票的历史成交量折线图 158
6.2.7 绘制股票的历史OHLC图 159
6.3 调用Excel绘制图表 161
6.3.1 绘制三维折线图 161
6.3.2 绘制三维簇状条形图 163
第7章 办公离不开的“字”处理——操作Word文件 165
7.1 访问Word文件库——python-docx库 165
7.1.1 python-docx库中的那些对象 166
7.1.2 打开Word文件并读取内容 167
7.1.3 写入数据到Word文件 169
7.1.4 在Word文件中添加表格 171
7.1.5 设置文件样式 173
7.1.6 修改文件样式 175
7.2 解决在工作中使用Word时遇到的问题 176
7.2.1 批量转换.doc文件为.docx文件 176
7.2.2 采用模板批量生成证书文件 178
7.2.3 批量统计文件页数和字数 181
7.2.4 批量转换Word文件为PDF文件 183
第8章 演示利器PPT——操作PPT文档 186
8.1 访问PowerPoint文档库——python-pptx库 186
8.1.1 PPT中的基本概念 187
8.1.2 python-pptx库中的那些对象 188
8.1.3 创建PPT文档 189
8.1.4 添加更多的幻灯片 190
8.1.5 在PPT幻灯片中添加表格 192
8.1.6 在PPT幻灯片中添加图表 195
8.2 解决在工作中使用PPT时遇到的实际问题 197
8.2.1 批量转换.ppt文档为.pptx文档 197
8.2.2 批量转换PPT文档为PDF文件 199
第9章 操作跨平台的文件格式——PDF文件 201
9.1 PDF文件的优势 201
9.2 操作PDF文件库——PyPDF2库 202
9.2.1 PyPDF2库中的对象 202
9.2.2 读取PDF文件的内容 202
9.2.3 拆分PDF文件 204
9.2.4 用更多的方法拆分PDF文件 205
9.2.5 合并PDF文件 207
9.2.6 对PDF文件批量添加水印 208
9.2.7 批量加密PDF文件 211
9.2.8 批量解密PDF文件 213
9.2.9 暴力破解PDF文件的密码 214
9.3 解析PDF文件库——pdfplumber库 216
9.3.1 提取PDF文件中的文本信息 216
9.3.2 提取PDF文件中的表格信息 217
第10章 有图有真相——批量处理图像文件 218
10.1 图像处理库——Pillow库 218
10.1.1 读取图像文件的信息 219
10.1.2 我想要png文件——批量转换图像格式 221
10.1.3 批量设置图像的大小 222
10.2 旋转图像 225
10.3 添加水印 226
10.4 生成各种各样的“码” 228
10.4.1 批量生成二维码 228
10.4.2 批量生成条码 231
第11章 坐在旁边喝点茶——RPA(机器人流程自动化) 234
11.1 自动化Windows GUI库——pywinauto库 234
11.1.1 如何使用pywinauto库 235
11.1.2 在记事本中自动输入信息 240
11.2 微信客服机器人 242
第12章 给你的程序穿上“马甲”——使用GUI库 247
12.1 为什么选择Tkinter 247
12.1.1 编写第一个Tkinter程序 248
12.1.2 为按钮添加事件处理功能 249
12.2 布局管理 250
12.2.1 pack布局的更多属性 251
12.2.2 grid布局 252
12.3 工作中常用的控件 253
12.3.1 使用messagebox 253
12.3.2 进度条 256
12.3.3 文件选择器 259
第13章 将Python程序打包成.exe文件 263
13.1 安装auto-py-to-exe工具 264
13.2 使用auto-py-to-exe工具 265
13.3 打包成单个文件还是目录 268
13.4 包含资源文件怎么办 268