本書是一本全面介紹如何利用Python自動化處理各類案頭工作的實戰(zhàn)教程。全書共11章,第1~3章介紹自動化辦公的優(yōu)勢及需要掌握的Python必備基礎(chǔ)知識;第4~7章介紹如何自動化操作Excel表格、Word文檔、PPT文件和PDF文件等,讀者可將所學知識直接應用于日常工作;第8~11章介紹如何實現(xiàn)其他軟件的自動化操作,如自動組織文件、瀏覽器自動化、郵件自動化、圖形用戶界面軟件自動化等,進一步拓寬辦公自動化的應用范圍。 本書理論知識精練、代碼簡單、思路清晰、學習資源齊備,適合有一定辦公軟件使用基礎(chǔ)又想進一步提高工作效率的辦公人員,如從事行政、人事、營銷、財務等職業(yè)的人士閱讀,也可供Python編程愛好者參考。
中國人工智能協(xié)會高級會員《深入淺出生成對抗網(wǎng)絡:原理剖析與TensorFlow實現(xiàn)》一書作者阿里云大學云學院導師/極客學院NLP導師前9377游戲公司后端工程師
第1章 人人都應學會Python自動化辦公 1
1.1 為什么工作總是做不完 1
1.2 什么是自動化辦公 2
1.3 為什么要學會Python自動化辦公 3
1.4 安裝Python 4
1.4.1 Windows下安裝Python 5
1.4.2 macOS下安裝Python 7
1.5 Python周邊工具 8
1.5.1 pip 8
1.5.2 IPython 10
1.5.3 Jupyter Notebook 11
1.5.4 VS Code 12
本章小結(jié) 15
第2章 寫下第一行代碼 16
2.1 變量 16
2.1.1 變量概述 16
2.1.2 變量命名規(guī)則 17
2.2 基礎(chǔ)數(shù)據(jù)類型與基礎(chǔ)語法規(guī)則 18
2.2.1 基礎(chǔ)數(shù)據(jù)類型 18
2.2.2 基礎(chǔ)語法規(guī)則 21
2.3 輸入與輸出 22
2.3.1 py文件 22
2.3.2 輸出數(shù)據(jù) 23
2.3.3 獲得輸入數(shù)據(jù) 25
2.4 控制流 26
2.4.1 比較運算符 27
2.4.2 邏輯運算符 29
2.4.3 判斷語句 30
2.4.4 循環(huán)語句 32
2.4.5 跳出循環(huán) 35
2.5 函數(shù) 36
2.5.1 基本函數(shù)體 36
2.5.2 局部作用域與全局作用域 38
2.5.3 global關(guān)鍵字 41
2.5.4 實現(xiàn)斐波那契數(shù)列 43
本章小結(jié) 44
第3章 Python中最關(guān)鍵的20% 46
3.1 容器類型 46
3.1.1 列表 46
3.1.2 元組 51
3.1.3 字典 54
3.1.4 集合 59
3.2 錯誤與異常 62
3.2.1 語法錯誤 63
3.2.2 異常捕捉 63
3.2.3 異常處理 66
3.3 類 70
3.3.1 類的基礎(chǔ) 71
3.3.2 繼承與多態(tài) 73
3.4 線程與進程 78
3.4.1 線程 79
3.4.2 線程池 84
3.4.3 進程 86
3.4.4 進程池 91
本章小結(jié) 92
第4章 Excel表格自動化 94
4.1 讀寫Excel數(shù)據(jù) 95
4.1.1 使用xlrd讀取工作簿數(shù)據(jù) 96
4.1.2 使用xlwt將數(shù)據(jù)寫入工作簿 99
4.1.3 使用xlutils修改工作簿數(shù)據(jù) 101
4.2 操作大型工作簿 103
4.2.1 使用openpyxl讀取工作簿數(shù)據(jù) 103
4.2.2 使用openpyxl將數(shù)據(jù)寫入工作簿 105
4.2.3 修改工作簿中的單元格樣式 108
4.2.4 使用openpyxl操作大型工作簿 111
4.2.5 使用openpyxl實現(xiàn)Excel日歷 113
4.3 代替與超越Excel 118
4.3.1 Pandas概述 118
4.3.2 Pandas自動操作Excel 121
4.3.3 使用Pandas實現(xiàn)工作表中的數(shù)據(jù)排序 126
4.3.4 使用Pandas實現(xiàn)Excel數(shù)據(jù)過濾 129
4.3.5 使用Pandas實現(xiàn)Excel數(shù)據(jù)拆分 131
4.3.6 使用Pandas實現(xiàn)多表聯(lián)合操作 133
4.3.7 使用Pandas對Excel數(shù)據(jù)進行統(tǒng)計運算 136
4.3.8 使用Pandas實現(xiàn)數(shù)據(jù)的可視化 139
本章小結(jié) 147
第5章 Word文檔自動化 148
5.1 讀寫Word文檔 148
5.1.1 快速創(chuàng)建Word文檔 148
5.1.2 *.doc文件格式轉(zhuǎn)為*.docx文件格式 149
5.1.3 讀取Word文檔中的段落 151
5.1.4 讀取Word文檔中的表格 152
5.1.5 將文字寫入Word文檔 156
5.1.6 將圖片寫入Word文檔 157
5.1.7 將表格寫入Word文檔 158
5.1.8 插入有序列表與無序列表 159
5.2 修改Word文檔樣式 160
5.2.1 文本格式 161
5.2.2 Word文檔樣式 162
5.3 使用Word模板 165
5.3.1 創(chuàng)建Word模板文件 165
5.3.2 使用Word模板文件 169
5.3.3 快速生成千份勞動合同 170
5.4 自動生成數(shù)據(jù)分析報告 172
5.4.1 處理Excel數(shù)據(jù) 173
5.4.2 生成美觀的數(shù)據(jù)分析報告 175
本章小結(jié) 177
第6章 PPT文件自動化 178
6.1 讀寫PPT文件 178
6.1.1 快速創(chuàng)建PPT文件 179
6.1.2 向幻燈片中插入文字 180
6.1.3 向幻燈片中插入新文本框 184
6.1.4 向幻燈片中插入圖片 186
6.1.5 向幻燈片中插入形狀 187
6.1.6 向幻燈片中插入表格 191
6.2 自動化生成250頁電影PPT文件 192
6.2.1 PPT母版 193
6.2.2 生成250頁電影PPT文件 196
本章小結(jié) 203
第7章 PDF文件自動化 204
7.1 讀取PDF文件內(nèi)容 204
7.1.1 PDF文件原理簡析 204
7.1.2 讀取PDF文件中的文字 207
7.1.3 從PDF文件中提取圖像 210
7.1.4 從PDF文件中提取表格 215
7.2 PDF文件基本操作 218
7.2.1 給PDF文件添加文字 218
7.2.2 為PDF文件生成大綱 220
7.2.3 旋轉(zhuǎn)PDF頁面 221
7.2.4 加密PDF文件 223
7.2.5 合并PDF文件 224
7.2.6 給PDF文件添加水印 225
本章小結(jié) 228
第8章 自動組織文件 229
8.1 文件屬性與文件操作 229
8.1.1 獲取文件屬性 229
8.1.2 讀寫文件 232
8.1.3 重命名文件 235
8.1.4 刪除文件 236
8.1.5 監(jiān)控文件變化 237
8.2 文件路徑 240
8.2.1 不同操作系統(tǒng)間路徑的差異 240
8.2.2 絕對路徑與相對路徑 241
8.2.3 創(chuàng)建文件夾 243
8.2.4 與文件路徑相關(guān)的常用操作 244
8.3 壓縮文件操作 247
8.3.1 壓縮文件 248
8.3.2 解壓縮文件 249
8.3.3 破解加密壓縮文件 251
本章小結(jié) 253
第9章 瀏覽器自動化 254
9.1 自動獲取網(wǎng)站信息 254
9.1.1 淺析HTTP 254
9.1.2 構(gòu)成網(wǎng)站內(nèi)容的元素 258
9.1.3 通過requests獲取網(wǎng)頁內(nèi)容 263
9.1.4 通過BeautifulSoup4解析網(wǎng)頁內(nèi)容 267
9.1.5 豆瓣電影爬蟲 270
9.2 模擬登錄 275
9.2.1 網(wǎng)站登錄原理 275
9.2.2 瀏覽器Cookie 277
9.2.3 requests實現(xiàn)模擬登錄 280
9.3 自動化操作瀏覽器 286
9.3.1 搭建Selenium使用環(huán)境 287
9.3.2 Selenium基本使用方法 289
9.3.3 Selenium等待元素加載 292
9.3.4 XPath基本使用方法 295
9.3.5 通過Selenium自動化網(wǎng)站后臺 296
9.3.6 Selenium操作iframe 300
本章小結(jié) 302
第10章 郵件自動化 304
10.1 電子郵件協(xié)議 304
10.1.1 電子郵件的由來 304
10.1.2 郵件服務器 305
10.1.3 發(fā)送郵件協(xié)議:SMTP 305
10.1.4 接收郵件協(xié)議:POP3與IMAP 305
10.2 設(shè)置第三方郵件服務 306
10.2.1 設(shè)置新浪郵箱 306
10.2.2 電子郵件發(fā)送原理 308
10.3 自動發(fā)送郵件 309
10.3.1 安裝yagmail庫 309
10.3.2 使用yagmail庫發(fā)送文字郵件 310
10.3.3 使用yagmail庫發(fā)送附帶圖片的郵件 311
10.3.4 使用yagmail庫發(fā)送附帶附件的郵件 312
10.3.5 使用yagmail庫發(fā)送HTML郵件 314
10.4 自動獲取郵件 316
10.4.1 淺談郵件格式 316
10.4.2 解析郵件頭 319
10.4.3 解析郵件體 322
10.4.4 自動獲取郵件附件 324
本章小結(jié) 325
第11章 圖形用戶界面軟件自動化 326
11.1 初識PyAutoGUI 326
11.1.1 故障安全功能 327
11.1.2 PyAutoGUI庫的一些問題 327
11.2 控制鼠標 328
11.2.1 控制鼠標移動 329
11.2.2 控制鼠標單擊 330
11.2.3 控制鼠標拖動 331
11.2.4 控制鼠標滾動 331
11.2.5 監(jiān)控鼠標操作 332
11.3 控制鍵盤 334
11.3.1 模擬輸入 334
11.3.2 敲擊鍵盤 334
11.3.3 使用快捷鍵 335
11.3.4 監(jiān)控鍵盤輸入 336
11.4 其他功能 338
11.4.1 提示彈窗 338
11.4.2 識圖定位 340
本章小結(jié) 345
附錄A Python的來源與歷史 346
附錄A.1 編程語言概述 346
附錄A.2 Python的誕生 347
附錄A.3 Python 2與Python 3的區(qū)別 349
附錄B 計算機基礎(chǔ)概念 350
附錄B.1 操作系統(tǒng)概述 350
附錄B.2 環(huán)境變量 351
附錄B.3 權(quán)限系統(tǒng) 353