Python第三方庫開發(fā)應用實戰(zhàn)
定 價:99 元
- 作者:張有菊
- 出版時間:2020/5/1
- ISBN:9787115514950
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.561
- 頁碼:480
- 紙張:
- 版次:01
- 開本:16K
《Python第三方庫開發(fā)應用實戰(zhàn)》循序漸進地講解了Python中常用第三方庫的核心知識,并通過具體實例的實現(xiàn)過程演練了各個庫的使用流程。全書共12章,分別講解了Tornado框架、Django框架、Flask框架、數據庫存儲框架、數據庫驅動框架、使用ORM操作數據庫、特殊文本格式處理、圖像處理、圖形用戶界面、數據可視化、第三方多媒體庫、第三方網絡開發(fā)庫。
本書適用于已經了解了Python基礎語法的讀者,也適用于希望進一步提高自己Python開發(fā)水平的讀者,還可以作為大專院校相關專業(yè)的師生用書和培訓學校的教材。
分別講解了Tornado框架、Django框架、Flask框架、數據庫存儲框架、數據庫驅動框架、使用ORM操作數據庫、特殊文本格式處理、圖像處理、圖形用戶界面、數據可視化、第三方多媒體庫、第三方網絡開發(fā)庫。
1.內容全面。
本書內容涵蓋了12類常用的Python第三方庫,通過案例,循序漸進地講解了這些庫中函數的使用方法,幫助讀者快速掌握和應用這些庫。
2.通過實例驅動教學。
本書采用理論加實例的講解方式,通過實例展示知識點的應用,達到了學以致用的目的。
3.提供更為廣泛的解決方案。
通過本書的學習,讀者可以構建自己的Python工具箱。借助該工具箱,讀者能夠使用Python 開發(fā)各種類型的應用程序。
4.提供示例源代碼下載服務,可在異步社區(qū)輕松下載。
張有菊,計算機碩士,精通UNIX平臺開發(fā),12年C++開發(fā)經驗,4年Python開發(fā)經驗,參與研發(fā)了浪潮云海OS系統(tǒng),這是中國首款自主研發(fā)的云數據中心操作系統(tǒng),深度融合OpenStack,是開放、融合、安全的云數據中心操作系統(tǒng),支持最廣泛的異構資源管理和跨云整合。
目 錄
第 1章 Tornado框架 1
1.1 Tornado框架簡介 2
1.2 Tornado開發(fā)基礎 2
1.2.1 編寫第 一個Tornado程序 2
1.2.2 獲取請求參數 3
1.2.3 使用cookie 5
1.2.4 URL轉向 6
1.2.5 使用靜態(tài)資源文件 7
1.3 表單和模板操作 7
1.3.1 一個基本的注冊表單 7
1.3.2 在模板中使用函數 9
1.4 數據庫操作 12
1.4.1 實現(xiàn)持久化Web服務 12
1.4.2 圖書管理系統(tǒng) 15
第 2章 使用Django 20
2.1 Django簡介 21
2.2 Django開發(fā)基礎 21
2.2.1 搭建Django環(huán)境 21
2.2.2 常用的Django命令 22
2.2.3 第 一個Django項目 23
2.2.4 在URL中傳遞參數 25
2.2.5 使用模板 27
2.2.6 使用表單 31
2.2.7 實現(xiàn)基本的數據庫操作 32
2.3 使用Django后臺系統(tǒng)開發(fā)一個
博客系統(tǒng) 33
2.4 開發(fā)一個新聞聚合系統(tǒng) 36
2.4.1 基本設置 36
2.4.2 獲取聚合信息 37
2.4.3 視圖處理 40
2.4.4 模板文件 42
2.5 開發(fā)一個在線商城系統(tǒng) 45
2.5.1 系統(tǒng)設置 45
2.5.2 前臺商城展示模塊 46
2.5.3 購物車模塊 49
2.5.4 訂單模塊 53
2.6 使用Mezzanine庫 56
2.7 使用Cartridge庫 58
2.8 使用django-oscar庫 61
第3章 Flask框架 62
3.1 Flask開發(fā)基礎 63
3.1.1 Flask框架簡介 63
3.1.2 Django和Flask的對比 65
3.1.3 安裝Flask 65
3.1.4 第 一個Flask Web程序 66
3.2 基于Flask開發(fā)Web程序 68
3.2.1 傳遞URL參數 68
3.2.2 使用會話和cookie 70
3.2.3 使用Flask-Script擴展 71
3.2.4 使用模板 72
3.2.5 使用Flask-Bootstrap
擴展 74
3.2.6 使用Flask-Moment擴展
本地化日期和時間 76
3.3 表單操作 78
3.3.1 使用Flask-WTF擴展 78
3.3.2 文件上傳 81
3.4 使用數據庫 82
3.4.1 Python數據庫框架 82
3.4.2 會員注冊和登錄 82
3.4.3 使用Flask-SQLAlchemy
管理數據庫 84
3.5 收發(fā)電子郵件 87
3.5.1 使用Flask-Mail擴展 87
3.5.2 使用SendGrid發(fā)送
郵件 90
3.6 Flask+MySQL+ SqlAlchemy
信息發(fā)布系統(tǒng) 92
3.6.1 使用Virtualenv創(chuàng)建
虛擬環(huán)境 92
3.6.2 使用Flask實現(xiàn)數據庫
遷移 92
3.6.3 具體實現(xiàn) 93
3.7 圖書借閱管理系統(tǒng) 100
3.7.1 數據庫設置 100
3.7.2 登錄驗證與管理 101
3.7.3 安全檢查與頁面跳轉
管理 102
3.7.4 后臺用戶管理 102
3.7.5 圖書管理 103
3.7.6 前臺用戶管理 104
第4章 數據庫存儲框架 107
4.1 安裝與使用pickleDB 108
4.1.1 安裝pickleDB 108
4.1.2 使用pickleDB 108
4.2 安裝與使用TinyDB 108
4.2.1 安裝TinyDB 109
4.2.2 使用TinyDB 109
4.3 如何使用ZODB 110
4.3.1 安裝并使用ZODB 110
4.3.2 模擬銀行存取款系統(tǒng) 112
4.4 個人日志系統(tǒng)(使用Flask與
TinyDB實現(xiàn)) 114
4.4.1 系統(tǒng)設置 114
4.4.2 后臺管理 117
4.4.3 登錄認證管理 118
4.4.4 前臺日志展示 121
4.4.5 系統(tǒng)模板 124
第5章 數據庫驅動框架 131
5.1 連接MySQL數據庫 132
5.1.1 使用mysqlclient 132
5.1.2 使用PyMySQL 134
5.2 連接PostgreSQL數據庫 146
5.2.1 下載并安裝
PostgreSQL 146
5.2.2 使用psycopg2模塊 148
5.2.3 使用queries模塊 155
5.3 連接SQLite3數據庫 156
5.4 連接SQL Server數據庫 158
5.5 連接NoSQL數據庫 161
5.5.1 使用cassandra-driver連接
Cassandra數據庫 161
5.5.2 使用PyMongo驅動連接
MongoDB數據庫 162
5.5.3 使用redis-py連接
Redis 165
第6章 使用ORM操作數據庫 169
6.1 ORM的背景 170
6.2 使用mysqlclient連接
數據庫 170
6.3 使用Peewee連接數據庫 174
6.3.1 Peewee的基本用法 174
6.3.2 使用Peewee、Flask與
MySQL開發(fā)一個在線
留言系統(tǒng) 178
6.4 使用Pony連接數據庫 181
6.4.1 Pony的基礎知識 181
6.4.2 操作SQLite數據庫 181
6.4.3 操作MySQL數據庫 186
6.5 使用mongoengine連接
MongoDB數據庫 188
第7章 特殊文本格式處理 191
7.1 使用Tablib模塊 192
7.1.1 基本用法 192
7.1.2 操作數據集中指定的
行和列 193
7.1.3 刪除并導出不同格式的
數據 193
7.1.4 生成一個Excel文件 194
7.1.5 處理多個數據集 195
7.1.6 使用標簽過濾數據 197
7.1.7 分離表格中的數據 197
7.2 使用Office模塊/庫 198
7.2.1 使用openpyxl模塊 198
7.2.2 使用pyexcel模塊 202
7.2.3 使用python-docx模塊 208
7.2.4 使用xlrd和xlwt
庫讀寫Excel 219
7.2.5 使用xlsxwriter庫 221
7.3 使用PDF模塊/庫 229
7.3.1 使用PDFMiner模塊 229
7.3.2 使用PyPDF2 233
7.3.3 使用Reportlab庫 237
第8章 圖像處理 242
8.1 使用Pillow庫 243
8.1.1 安裝Pillow庫 243
8.1.2 使用Image模塊 243
8.1.3 繪制隨機漫步圖 249
8.1.4 使用ImageChops模塊
合成圖片 251
8.1.5 使用ImageEnhance模塊
增強圖像 253
8.1.6 使用ImageFilter模塊
實現(xiàn)濾鏡功能 255
8.1.7 使用ImageDraw模塊
繪制圖像 256
8.1.8 使用ImageFont模塊設置
字體 258
8.1.9 繪制指定年份的日歷 259
8.2 使用hmap庫 263
8.3 使用pyBarcode庫創(chuàng)建
條形碼 264
8.4 使用qrcode庫創(chuàng)建二維碼 266
8.5 使用scikit-image庫 269
8.5.1 讀取和顯示 270
8.5.2 像素操作 272
8.5.3 轉換操作 274
8.5.4 繪制圖像 276
8.5.5 圖像批處理 280
8.5.6 縮放和旋轉 281
8.6 使用face_recognition庫實現(xiàn)
人臉識別 283
8.6.1 搭建開發(fā)環(huán)境 283
8.6.2 面部特征 284
8.6.3 識別人臉 286
8.6.4 攝像頭實時識別 289
第9章 圖形用戶界面 290
9.1 使用PyQt庫 291
9.1.1 第 一個GUI程序 291
9.1.2 菜單和工具欄 293
9.1.3 界面布局 295
9.1.4 事件處理 299
9.1.5 對話框 303
9.1.6 組件 307
9.1.7 使用Eric6提高開發(fā)
效率 316
9.2 使用pyglet庫 317
9.2.1 安裝并嘗試使用
pyglet 317
9.2.2 實現(xiàn)OpenGL操作 319
9.2.3 開發(fā)一個pyglet游戲 320
9.3 使用toga庫 330
9.3.1 安裝toga庫并創(chuàng)建第 一個
toga示例 330
9.3.2 使用基本組件 331
9.3.3 使用布局組件 332
9.3.4 使用繪圖組件 333
9.4 使用wxPython庫 334
9.4.1 安裝并使用
wxPython庫 334
9.4.2 基本組件 335
第 10章 數據可視化 340
10.1 使用Matplotlib庫 341
10.1.1 搭建Matplotlib庫的
使用環(huán)境 341
10.1.2 初級繪圖 342
10.1.3 自定義散點圖樣式 345
10.1.4 繪制柱狀圖 346
10.1.5 繪制多幅子圖 350
10.1.6 繪制曲線 352
10.1.7 繪制隨機漫步圖 357
10.1.8 大數據分析某年的最
高溫度和最低溫度 360
10.1.9 在Tkinter中使用
Matplotlib庫繪制
圖表 361
10.2 使用pygal庫 362
10.2.1 安裝pygal庫 362
10.2.2 使用pygal庫模擬
擲骰子 363
10.3 使用csvkit庫處理CSV
文件 365
10.4 使用Pandas庫 371
10.4.1 安裝Pandas庫 371
10.4.2 從CSV文件讀取
數據 371
10.4.3 選擇指定數據 376
10.4.4 日期相關操作 379
10.5 使用NumPy庫 383
10.5.1 安裝NumPy庫 383
10.5.2 數組對象 384
10.5.3 使用通用函數 388
10.5.4 使用Matplotlib庫 393
第 11章 第三方多媒體庫 395
11.1 使用audiolazy庫處理數字
信號 396
11.1.1 安裝并嘗試使用
audiolazy庫 396
11.1.2 實現(xiàn)巴特沃斯濾波器 396
11.2 使用audioread庫實現(xiàn)音頻
解碼 397
11.3 使用eyeD3庫處理音頻 398
11.3.1 安裝并嘗試使用
eyeD3庫 398
11.3.2 使用eyeD3庫編程 398
11.3.3 MP3文件編輯器 399
11.4 使用m3u8庫 405
11.4.1 m3u8庫的介紹和
安裝 406
11.4.2 下載m3u8視頻并轉換為
MP4文件 406
11.5 使用mutagen庫 407
11.5.1 安裝并嘗試使用
mutagen庫 407
11.5.2 獲取指定音頻文件的
標簽信息 408
11.5.3 批量設置視頻文件的
封面圖片 409
11.6 使用pydub庫 414
11.6.1 安裝并嘗試使用
pydub庫 415
11.6.2 使用AudioSegment 415
11.6.3 截取指定的MP3
文件 419
11.7 使用tinytag庫 420
11.7.1 安裝并嘗試使用
tinytag庫 420
11.7.2 開發(fā)一個MP3
播放器 421
11.8 使用moviepy庫 429
11.8.1 安裝moviepy庫 429
11.8.2 剪切一段視頻 429
11.8.3 視頻合成 430
11.8.4 多屏顯示 430
11.8.5 設置視頻屬性 432
11.8.6 使用moviepy庫和
Matplotlib庫實現(xiàn)
數據的動態(tài)可視化 433
11.8.7 動畫合成 434
11.8.8 使用moviepy庫和
numpy庫實現(xiàn)文本
動態(tài)化 435
11.9 使用scikit-video庫 436
11.9.1 安裝并嘗試使用
scikit-video庫 436
11.9.2 寫入視頻 437
11.9.3 視頻基準測試 438
11.9.4 圖像的讀取和寫入 439
11.9.5 視頻的讀取和寫入 440
第 12章 第三方網絡開發(fā)庫 442
12.1 處理HTML和XML 443
12.1.1 使用Beautiful Soup庫 443
12.1.2 使用bleach庫 449
12.1.3 使用cssutils庫 454
12.1.4 使用html5lib庫 455
12.1.5 使用MarkupSafe庫 456
12.1.6 使用PyQuery庫 457
12.2 處理HTTP 461
12.2.1 使用aiohttp庫 461
12.2.2 使用requests庫 463
12.2.3 使用httplib2庫 466
12.2.4 使用urllib3庫 469
12.3 電子郵件 472
12.3.1 使用envelopes庫 472
12.3.2 使用Inbox庫 473
12.4 處理URL 476
12.4.1 使用furl庫 476
12.4.2 使用purl庫 477
12.4.3 使用webargs庫 479