趣玩 Python:自動化辦公真簡單 (雙色+視頻版)

關東升

  • 出版商: 電子工業
  • 出版日期: 2021-11-01
  • 定價: $534
  • 售價: 8.5$454
  • 語言: 簡體中文
  • 頁數: 280
  • 裝訂: 平裝
  • ISBN: 7121422972
  • ISBN-13: 9787121422973
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書以數據收集→數據清洗→數據分析→數據可視化→根據數據可視化結果(即圖表)做決策為脈絡,介紹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