这是一本关于如何利用Python提高日常办公效率的书,书中凝聚了作者多年的实践经验和独特思考,旨在帮助读者准确、高效地完成大量高重复度的工作。
《学Python,不加班:轻松实现办公自动化》汇集了日常办公和处理文档时常见的问题,通过实例的演示与讲解,帮助读者灵活有效地使用Python处理工作中遇到的问题。全书共11章,涵盖Python的各种应用场景,具体包括文件管理自动化,网络信息自动获取,TXT、XLS/XLSX、DOC/DOCX、PPT、PDF、图片文件的自动化处理,模拟鼠标、键盘操控本地软件,自动化运行管理等。本书力图淡化编程中的抽象概念,贴合工作场景,注重实战效果,通过对Python技术的巧妙讲解,帮助读者成为高效率的办公室“超人”。
《学Python,不加班:轻松实现办公自动化》适合任何想要学习Python编程的读者,尤其适合缺乏编程经验的初学者。同时本书提供所有案例的源代码文件,方便读者边学边练,爱上Python编程。
1.深挖国内职场人群痛点,利用Python实现办公自动化。
2.结合实际案例讲解编程和数据库知识,让读者快速理解掌握。
3.完整行业案例全流程讲解,全方位解读Python在自动化办公中的作用。
4.附赠案例源代码、数据文件、在线视频、练习题及答案,方便举一反三。
何华平,毕业于北京师范大学,有近20年的编程经验,研究领域为大数据、人工智能、区块链、物联网等。深度参与智能风控、智慧城市、数字资产等项目的研究,致力于运用新技术改造业务流程以提升效率,推动传统行业的数字化转型。
第 1 章 开启Python 之旅1
1.1 为何学习Python.1
1.1.1 繁忙的工作场景1
1.1.2 常用的效率工具4
1.1.3 Python 的优势. 11
1.2 Python 的开发环境配置.11
1.2.1 通过官方安装包安装.. 11
1.2.2 通过Anaconda 套件安装.. 12
1.3 开始编程—输出“Hello,
World!” ..13
1.3.1 使用Python 命令行. 13
1.3.2 使用IDLE.. 14
1.3.3 Anaconda Prompt 命令窗口. 15
1.3.4 Jupyter Notebook 15
1.3.5 Spyder 集成开发环境.. 16
1.3.6 IPython 命令窗口.. 18
1.4 Python 程序编写风格..19
1.4.1 大小写敏感 19
1.4.2 换行与注释 19
1.4.3 代码块与缩进.. 20
案例:输出100 次“Hello,
World!” . 21
第 2 章 Python 的基本语法.23
2.1 数据类型与变量.. 23
2.1.1 数字23
2.1.2 字符串..24
2.1.3 变量27
2.1.4 组合数据类型..27
2.2 程序流程控制 30
2.2.1 if 语句..30
2.2.2 for 语句31
2.2.3 while 语句..32
2.3 函数(function) 33
2.3.1 函数的定义与调用33
2.3.2 函数的应用举例.33
2.4 类(class) . 35
2.4.1 类的基础用法..35
2.4.2 类的高级用法..39
2.5 Python 程序文档结构.. 41
2.5.1 模块41
2.5.2 包.43
2.5.3 安装库..45
第3 章 高效办公文件管理..48
3.1 文件基础知识.. 48
2 目 录
3.1.1 文件存储.48
3.1.2 文件的编码49
3.1.3 文件的类型50
3.2 文件读写..51
3.2.1 open 函数51
3.2.2 读取文本文件..51
案例:统计汉字出现的频率..53
3.2.3 写入文本文件..53
案例:读取文件头识别文件类型54
3.3 文件和目录操作..56
3.3.1 使用os 库..56
案例:删除小文件60
案例:批量更名.60
3.3.2 使用shutil 库60
案例:整理压缩文件..63
3.3.3 文件查找.65
案例:清理文件“迷宫”66
案例:第三方库探索..68
第4 章 网络信息自动获取..70
4.1 借用Excel 实现简单的爬虫..70
4.2 浏览网页的基本原理72
4.2.1 浏览器调试工具.72
4.2.2 Fiddler 抓包方法75
4.3 requests 库与爬虫开发.77
4.3.1 发送请求.77
4.3.2 构造网址.79
案例:采集数据.82
4.3.3 爬虫攻防策略..84
4.4 网页解析工具87
4.4.1 正则表达式87
4.4.2 lxml 库.89
4.4.3 BeautifulSoup4 库..90
案例:获取上市公司数据91
4.5 用selenium 爬取复杂页面93
4.5.1 网页截图.93
4.5.2 定位元素.96
4.5.3 按键与单击.. 97
4.5.4 页面等待 98
4.5.5 调用JavaScript 代码 99
4.5.6 获取页面cookies 100
4.5.7 无界面模式 101
第5 章 Python 与Excel 自动操作. 102
5.1 从VBA 说起..102
5.1.1 一个VBA 示例 102
5.1.2 Excel 中的对象 103
5.1.3 自定义函数 105
5.2 从VBA 过渡到Python.106
5.2.1 win32com 库. 107
5.2.2 免费库xlwings..116
5.2.3 商业库DataNitro 124
5.3 Excel 文档分析库.125
5.3.1 自动化思路 125
5.3.2 .xls 格式文档. 126
5.3.3 .xlsx 格式文档.. 134
5.4 pandas 库与Excel.143
5.4.1 读入Excel 文档.. 143
5.4.2 导出Excel 文档.. 147
5.4.3 数据汇总. 147
案例:提取某列文本中的数字. 151
案例:Excel 报表汇总和拆分大全. 151
案例:自动生成Excel 版研究报告 156
第6 章 Python 与Word 自动操作.. 159
6.1 用win32com 库操作Word 文档159
6.1.1 Word 对象模型 159
6.1.2 常用文档操作方法 174
案例:长文档自动处理. 189
案例:自动生成公文格式 193
6.2 Word 文档的底层结构..195
6.2.1 .doc 格式文档.. 195
6.2.2 .docx 格式文档 198
6.3 用python-docx 库操作Word 文档..201
6.3.1 Document 对象. 201
目 录 3
6.3.2 Styles 对象.. 204
6.3.3 Paragraph/Run 对象 210
6.3.4 Table 对象 213
6.3.5 Section 对象 215
案例:自动生成报告 218
案例:从简历中提取数据. 219
第7 章 Python 与PowerPoint 自动操作 223
7.1 用win32com 库操作PPT 文档..223
7.1.1 PowerPoint 的对象. 223
7.1.2 动画设计.. 234
案例:批量设置文本格式. 238
案例:批量设置动画 239
7.2 PowerPoint 文档的底层结构240
7.2.1 .ppt 格式文档. 240
7.2.2 .pptx 格式文档.. 242
7.3 用python-pptx 库操作
PowerPoint 文档247
7.3.1 创建演示文稿 247
7.3.2 幻灯片版式. 253
7.3.3 读取与编辑. 258
案例:自动生成PPT 版研究报告 265
案例:信息的自动化提取. 268
第8 章 Python 与PDF 文档操作. 270
8.1 PDF 文档简介.270
8.1.1 用记事本打开PDF
文档 270
8.1.2 PDF 文档的结构. 271
8.1.3 如何解析PDF 文档.. 272
8.2 Python 自动创建PDF 文档273
8.2.1 用ReportLab 库创建
PDF 文档. 273
案例:制作精美的封面.. 275
案例:制作带目录的PDF 格式
报告 286
8.2.2 用PyFPDF 库创建PDF
文档 292
8.3 自动读写PDF 文档295
8.3.1 用PyPDF2 库读写PDF
文档.295
8.3.2 用pdfrw 库读写PDF 文档299
8.3.3 用PyMuPDF 库读写PDF
文档.301
8.3.4 用PDFMiner 库提取文字..305
8.3.5 用Camelot 和pdfplumber 库
提取表格..306
第9 章 Python 与图形图像处理310
9.1 图片文件简介.310
9.1.1 常用图像格式310
9.1.2 BMP 格式图像的文件结构312
9.2 用Pillow 库处理图像315
9.2.1 图像打开与信息读取316
9.2.2 向图像中添加图形和文字.317
9.2.3 图像的增强效果..318
9.3 Python 图形绘制..319
9.3.1 用Matplotlib 库绘图.319
9.3.2 用pandas 库绘图.321
9.3.3 用Python 绘制词云图..323
9.4 在Python 中使用OpenCV 库.324
9.4.1 OpenCV 库的基本操作324
9.4.2 OpenCV 库的高级操作329
9.5 图片识别333
9.5.1 使用Tesseract 系统333
9.5.2 使用百度AI 开放平台.335
案例:识别审计报告中的表格..338
第 10 章 鼠标、键盘控制与程序自动化341
10.1 Windows 程序的运行机制.341
10.1.1 窗口、句柄、消息..341
10.1.2 鼠标、键盘操作343
案例:自动画图..347
10.2 鼠标与键盘操控库348
10.2.1 PyUserInput 库348
10.2.2 pynput 库349
4 目 录
案例:另类爬虫..351
10.2.3 PyAutoGUI 库.354
10.3 Pywinauto 库与GUI 自动化.357
10.3.1 简单示例:操控记事本357
10.3.2 Pywinauto 库的主要用法.358
案例:将GD 文档转为PDF 文档361
案例:将扫描版PDF 文档转成
文字型363
10.4 命令行界面程序控制..366
10.4.1 使用os.system 函数366
10.4.2 使用subprocess 模块.369
第 11 章 自动化运行管理..370
11.1 如何运行脚本文件370
11.1.1 通过CMD 命令窗口运行370
11.1.2 将程序打包成.exe 可执行
文件..371
11.1.3 设计图形界面.372
11.2 按计划自动运行程序..374
11.2.1 使用datetime 模块..374
11.2.2 使用schedule 库.. 375
11.2.3 使用Windows 系统计划
任务. 376
11.3 多任务同时运行.377
11.3.1 单线程 378
11.3.2 多线程 378
11.3.3 多进程 382
案例:爬虫下载文件.. 384
11.4 程序异常及处理.387
11.4.1 常见的程序异常.. 388
11.4.2 捕获异常并处理.. 388
11.5 收发邮件与远程控制..390
11.5.1 POP3、SMTP 和IMAP 390
11.5.2 用smtplib 模块自动发邮件 391
11.5.3 用imaplib 模块自动收邮件.. 393
11.5.4 用imapclient、pyzmail 库
自动收邮件. 394
案例:使用Python 远程控制计算机 395