书籍详情
Python项目开发实战
作者:陈强
出版社:清华大学出版社
出版时间:2021-03-01
ISBN:9787302572862
定价:¥79.00
购买这本书可以去
内容简介
《Python项目开发实战》通过12个大型项目的实现过程展示了开发Python项目的方法和流程。全书共12章,分别讲解了AI人机对战版五子棋游戏(AI pygame 实现),在线商城系统(Django Mezzanine Cartridge 实现),房产价格数据可视化分析系统(网络爬虫 MySQL pylab实现),招聘信息实时数据分析系统(网络爬虫 Flask Highcharts MySQL实现),基于深度学习的AI人脸识别系统(Flask OpenCV-Python Keras Sklearn实现),在线生鲜商城系统(Django Vue 新浪微博账号登录 支付宝支付),民宿信息可视化分析系统(网络爬虫 Django Echarts可视化),实时疫情监控系统(腾讯API接口 Seaborn matplotlib实现),个人博客系统(Flask TinyDB实现),电影票房数据可视化系统(网络爬虫 MySQL Pandas实现),大型3D枪战类冒险游戏(Panda3D实现),AI人脸识别签到打卡系统(PyQt5 百度智能云 OpenCV-Python SQLite3实现)。 《Python项目开发实战》适合了解Python语言基础语法并希望进一步提高Python开发水平的读者阅读,可以作为大中专院校相关专业的师生用书和培训机构的专业教材。
作者简介
陈强,中国海洋大学计算机博士,资深软件开发工程师和架构师,现在就职于北京百度研发中心,从事于百度自动驾驶系统的架构和开发工作。曾经在谷歌市场中发布过多款著名的应用等软件,这些应用软件在谷歌市场上取得了骄人的销售战绩。 另外,还精通C#、Java、C 和C语言等主流编程语言。业余期间,曾经在国内主流期刊中发表过多篇通信领域的著名论文。
目录
第1章 AI人机对战版五子棋游戏 (AI pygame实现) 1
1.1 项目介绍 2
1.2 系统架构分析 2
1.2.1 五子棋的基本棋型 2
1.2.2 功能模块 5
1.3 具体实现 6
1.3.1 设置基础参数 6
1.3.2 绘制棋盘 6
1.3.3 实现AI功能 8
1.3.4 实现按钮功能 15
1.3.5 重写功能 17
第2章 在线商城系统(Django Mezzanine Cartridge实现) 21
2.1 项目介绍 22
2.2 项目规划分析 23
2.2.1 电子商务的简要介绍 23
2.2.2 在线博客 商城系统构成模块 23
2.3 规划项目文件 24
2.4 使用第三方库Mezzanine和Cartridge 25
2.4.1 使用库Mezzanine 25
2.4.2 使用库Cartridge 28
2.5 实现基本功能 31
2.5.1 项目配置 31
2.5.2 后台模块 32
2.5.3 博客模块 33
2.5.4 商品展示模块 38
2.6 在线购物 41
2.6.1 购物车页面 41
2.6.2 订单详情页面 43
2.6.3 在线支付页面 46
2.6.4 订单确认页面 46
2.6.5 订单完成发送提醒邮件 48
第3章 房产价格数据可视化分析系统 (网络爬虫 MySQL pylab 实现) 51
3.1 背景介绍 52
3.2 需求分析 52
3.3 模块架构 52
3.4 系统设置 53
3.4.1 选择版本 53
3.4.2 保存日志信息 54
3.4.3 设置保存文件夹 54
3.4.4 设置爬取城市 55
3.4.5 处理区县信息 57
3.5 破解反爬机制 59
3.5.1 定义爬虫基类 59
3.5.2 浏览器用户代理 60
3.5.3 在线IP代理 61
3.6 爬虫抓取信息 61
3.6.1 设置解析元素 61
3.6.2 爬取二手房信息 62
3.6.3 爬取楼盘信息 66
3.6.4 爬取小区信息 68
3.6.5 爬取租房信息 72
3.7 数据可视化 77
3.7.1 爬取数据并保存到数据库 77
3.7.2 可视化济南市房价贵的4个小区 81
3.7.3 可视化济南市主要行政区的房价均价 82
3.7.4 可视化济南市主要行政区的房源数量 83
3.7.5 可视化济南市各区的房源数量所占百分比 84
第4章 招聘信息实时数据分析系统 (网络爬虫 Flask Highcharts MySQL实现) 87
4.1 系统背景介绍 88
4.2 系统架构分析 88
4.3 系统设置 89
4.4 网络爬虫 89
4.4.1 建立和数据库的连接 90
4.4.2 设置HTTP请求头User-Agent 90
4.4.3 抓取信息 91
4.4.4 将抓取的信息添加到数据库 92
4.4.5 处理薪资数据 93
4.4.6 清空数据库数据 94
4.4.7 执行爬虫程序 94
4.5 信息分离统计 94
4.5.1 根据“工作经验”分析数据 95
4.5.2 根据“工作地区”分析数据 96
4.5.3 根据“薪资水平”分析数据 97
4.5.4 根据“学历水平”分析数据 98
4.6 数据可视化 99
4.6.1 Flask Web架构 99
4.6.2 Web主页 101
4.6.3 数据展示页面 102
4.6.4 数据可视化页面 104
第5章 基于深度学习的AI人脸识别系统(Flask OpenCV-Python Keras Sklearn实现) 109
5.1 人工智能基础 110
5.1.1 人工智能介绍 110
5.1.2 人工智能的发展历程 110
5.1.3 和人工智能相关的几个重要概念 111
5.2 机器学习基础 112
5.2.1 机器学习介绍 112
5.2.2 机器学习的三个发展阶段 113
5.2.3 机器学习的分类 113
5.2.4 深度学习和机器学习的对比 114
5.3 人工智能的研究领域和应用场景 115
5.3.1 人工智能的研究领域 115
5.3.2 人工智能的应用场景 116
5.4 系统需求分析 117
5.4.1 系统功能分析 117
5.4.2 实现流程分析 117
5.4.3 技术分析 118
5.5 照片样本采集 119
5.6 深度学习和训练 120
5.6.1 原始图像预处理 120
5.6.2 构建人脸识别模块 122
5.7 人脸识别 126
5.8 Flask Web人脸识别接口 127
5.8.1 导入库文件 127
5.8.2 识别上传照片 128
5.8.3 在线识别 129
第6章 在线生鲜商城系统(Django Vue 新浪微博账号登录 支付宝支付) 131
6.1 系统背景介绍 132
6.2 功能需求分析 132
6.3 准备工作 134
6.3.1 用到的库 134
6.3.2 准备Vue环境 134
6.3.3 创建应用 135
6.3.4 系统配置 136
6.4 设计数据库 139
6.4.1 为users应用创建Model模型 139
6.4.2 为goods应用创建Model模型 140
6.4.3 为trade应用创建Model模型 145
6.4.4 为user_operation应用创建Model模型 147
6.4.5 生成数据库表 149
6.5 使用Restful API 150
6.5.1 商品列表序列化 150
6.5.2 在前端展示左侧分类、排序、商品列表和分页 158
6.6 登录认证 162
6.6.1 使用DRF Token认证 162
6.6.2 使用JWT认证 164
6.6.3 增加用户名和手机号短信验证登录功能 167
6.6.4 注册会员和退出登录 172
6.6.5 微博账户登录 176
6.6.6 social-app-django 集成第三方登录 180
6.7 支付宝支付 182
6.7.1 配置支付宝的沙箱环境 183
6.7.2 编写程序 185
6.8 测试程序 193
第7章 民宿信息可视化分析系统 (网络爬虫 Django Echarts可视化) 195
7.1 系统背景介绍 196
7.2 爬虫抓取信息 196
7.2.1 系统配置 196
7.2.2 Item处理 197
7.2.3 具体爬虫 198
7.2.4 破解反扒字体加密 198
7.2.5 下载器中间件 200
7.2.6 保存爬虫信息 204
7.3 数据可视化 207
7.3.1 数据库设计 208
7.3.2 视图显示 210
第8章 实时疫情监控系统(腾讯API接口 Seaborn matplotlib实现) 215
8.1 背景介绍 216
8.2 系统分析 216
8.2.1 需求分析 216
8.2.2 数据分析 216
8.3 具体实现 217
8.3.1 列出统计的省和地区的名字 217
8.3.2 查询并显示各地的实时确诊数据 218
8.3.3 绘制实时全国疫情确诊数对比图 219
8.3.4 绘制实时确诊人数、新增确诊人数、死亡人数、治愈人数对比图 220
8.3.5 将实时疫情数据保存到CSV文件 223
8.3.6 绘制国内实时疫情统计图 226
8.3.7 可视化实时疫情的详细数据 227
8.3.8 绘制实时疫情信息统计图 230
8.3.9 绘制本年度国内疫情曲线图 231
8.3.10 统计山东省的实时疫情数据 232
8.3.11 绘制山东省实时疫情数据统计图 235
第9章 个人博客系统(Flask TinyDB实现) 239
9.1 博客系统介绍 240
9.2 可行性分析 240
9.2.1 技术可行性分析:使用TinyDB 240
9.2.2 系统基本要求 241
9.2.3 可行性分析总结 241
9.3 具体实现 242
9.3.1 系统设置 242
9.3.2 后台管理 246
9.3.3 登录认证管理 247
9.3.4 前台日志展示 251
9.3.5 系统模板 255
第10章 电影票房数据可视化系统 (网络爬虫 MySQL Pandas实现) 263
10.1 需求分析 264
10.2 模块架构 264
10.3 爬虫抓取数据 265
10.3.1 分析网页 265
10.3.2 破解反爬 266
10.3.3 构造请求头 269
10.3.4 实现具体爬虫功能 270
10.3.5 将爬取的信息保存到数据库 272
10.4 数据可视化分析 273
10.4.1 电影票房TOP10 273
10.4.2 电影评分TOP10 275
10.4.3 电影人气TOP10 276
10.4.4 每月电影上映数量 278
10.4.5 每月电影票房 279
10.4.6 中外票房对比 280
10.4.7 名利双收TOP10 282
10.4.8 叫座不叫好TOP10 283
10.4.9 电影类型分布 284
第11章 大型3D枪战类冒险游戏 (Panda3D实现) 287
11.1 行业背景介绍 288
11.2 功能模块介绍 288
11.3 系统配置 289
11.3.1 全局信息 289
11.3.2 初始信息 289
11.3.3 音效信息 290
11.3.4 地图纹理 291
11.3.5 实现HUD模块 292
11.3.6 游戏入口 294
11.4 创建精灵 294
11.4.1 主角精灵类Avatar 294
11.4.2 属性信息 297
11.4.3 选择穿戴着装 298
11.5 调试运行 303
第12章 AI人脸识别签到打卡系统 (PyQt5 百度智能云 OpenCV-Python SQLite3实现) 305
12.1 需求分析 306
12.1.1 背景介绍 306
12.1.2 任务目标 306
12.2 模块架构 307
12.3 使用Qt Designer实现主窗口界面 307
12.3.1 设计系统UI主界面 307
12.3.2 将Qt Designer文件转换为Python文件 309
12.4 签到打卡、用户操作和用户组操作 312
12.4.1 使用百度AI之前的准备工作 312
12.4.2 设计UI界面 315
12.4.3 创建摄像头类 318
12.4.4 UI界面的操作处理 319
12.4.5 多线程操作和人脸识别 328
12.4.6 导出打卡签到信息 332
12.5 调试运行 334
1.1 项目介绍 2
1.2 系统架构分析 2
1.2.1 五子棋的基本棋型 2
1.2.2 功能模块 5
1.3 具体实现 6
1.3.1 设置基础参数 6
1.3.2 绘制棋盘 6
1.3.3 实现AI功能 8
1.3.4 实现按钮功能 15
1.3.5 重写功能 17
第2章 在线商城系统(Django Mezzanine Cartridge实现) 21
2.1 项目介绍 22
2.2 项目规划分析 23
2.2.1 电子商务的简要介绍 23
2.2.2 在线博客 商城系统构成模块 23
2.3 规划项目文件 24
2.4 使用第三方库Mezzanine和Cartridge 25
2.4.1 使用库Mezzanine 25
2.4.2 使用库Cartridge 28
2.5 实现基本功能 31
2.5.1 项目配置 31
2.5.2 后台模块 32
2.5.3 博客模块 33
2.5.4 商品展示模块 38
2.6 在线购物 41
2.6.1 购物车页面 41
2.6.2 订单详情页面 43
2.6.3 在线支付页面 46
2.6.4 订单确认页面 46
2.6.5 订单完成发送提醒邮件 48
第3章 房产价格数据可视化分析系统 (网络爬虫 MySQL pylab 实现) 51
3.1 背景介绍 52
3.2 需求分析 52
3.3 模块架构 52
3.4 系统设置 53
3.4.1 选择版本 53
3.4.2 保存日志信息 54
3.4.3 设置保存文件夹 54
3.4.4 设置爬取城市 55
3.4.5 处理区县信息 57
3.5 破解反爬机制 59
3.5.1 定义爬虫基类 59
3.5.2 浏览器用户代理 60
3.5.3 在线IP代理 61
3.6 爬虫抓取信息 61
3.6.1 设置解析元素 61
3.6.2 爬取二手房信息 62
3.6.3 爬取楼盘信息 66
3.6.4 爬取小区信息 68
3.6.5 爬取租房信息 72
3.7 数据可视化 77
3.7.1 爬取数据并保存到数据库 77
3.7.2 可视化济南市房价贵的4个小区 81
3.7.3 可视化济南市主要行政区的房价均价 82
3.7.4 可视化济南市主要行政区的房源数量 83
3.7.5 可视化济南市各区的房源数量所占百分比 84
第4章 招聘信息实时数据分析系统 (网络爬虫 Flask Highcharts MySQL实现) 87
4.1 系统背景介绍 88
4.2 系统架构分析 88
4.3 系统设置 89
4.4 网络爬虫 89
4.4.1 建立和数据库的连接 90
4.4.2 设置HTTP请求头User-Agent 90
4.4.3 抓取信息 91
4.4.4 将抓取的信息添加到数据库 92
4.4.5 处理薪资数据 93
4.4.6 清空数据库数据 94
4.4.7 执行爬虫程序 94
4.5 信息分离统计 94
4.5.1 根据“工作经验”分析数据 95
4.5.2 根据“工作地区”分析数据 96
4.5.3 根据“薪资水平”分析数据 97
4.5.4 根据“学历水平”分析数据 98
4.6 数据可视化 99
4.6.1 Flask Web架构 99
4.6.2 Web主页 101
4.6.3 数据展示页面 102
4.6.4 数据可视化页面 104
第5章 基于深度学习的AI人脸识别系统(Flask OpenCV-Python Keras Sklearn实现) 109
5.1 人工智能基础 110
5.1.1 人工智能介绍 110
5.1.2 人工智能的发展历程 110
5.1.3 和人工智能相关的几个重要概念 111
5.2 机器学习基础 112
5.2.1 机器学习介绍 112
5.2.2 机器学习的三个发展阶段 113
5.2.3 机器学习的分类 113
5.2.4 深度学习和机器学习的对比 114
5.3 人工智能的研究领域和应用场景 115
5.3.1 人工智能的研究领域 115
5.3.2 人工智能的应用场景 116
5.4 系统需求分析 117
5.4.1 系统功能分析 117
5.4.2 实现流程分析 117
5.4.3 技术分析 118
5.5 照片样本采集 119
5.6 深度学习和训练 120
5.6.1 原始图像预处理 120
5.6.2 构建人脸识别模块 122
5.7 人脸识别 126
5.8 Flask Web人脸识别接口 127
5.8.1 导入库文件 127
5.8.2 识别上传照片 128
5.8.3 在线识别 129
第6章 在线生鲜商城系统(Django Vue 新浪微博账号登录 支付宝支付) 131
6.1 系统背景介绍 132
6.2 功能需求分析 132
6.3 准备工作 134
6.3.1 用到的库 134
6.3.2 准备Vue环境 134
6.3.3 创建应用 135
6.3.4 系统配置 136
6.4 设计数据库 139
6.4.1 为users应用创建Model模型 139
6.4.2 为goods应用创建Model模型 140
6.4.3 为trade应用创建Model模型 145
6.4.4 为user_operation应用创建Model模型 147
6.4.5 生成数据库表 149
6.5 使用Restful API 150
6.5.1 商品列表序列化 150
6.5.2 在前端展示左侧分类、排序、商品列表和分页 158
6.6 登录认证 162
6.6.1 使用DRF Token认证 162
6.6.2 使用JWT认证 164
6.6.3 增加用户名和手机号短信验证登录功能 167
6.6.4 注册会员和退出登录 172
6.6.5 微博账户登录 176
6.6.6 social-app-django 集成第三方登录 180
6.7 支付宝支付 182
6.7.1 配置支付宝的沙箱环境 183
6.7.2 编写程序 185
6.8 测试程序 193
第7章 民宿信息可视化分析系统 (网络爬虫 Django Echarts可视化) 195
7.1 系统背景介绍 196
7.2 爬虫抓取信息 196
7.2.1 系统配置 196
7.2.2 Item处理 197
7.2.3 具体爬虫 198
7.2.4 破解反扒字体加密 198
7.2.5 下载器中间件 200
7.2.6 保存爬虫信息 204
7.3 数据可视化 207
7.3.1 数据库设计 208
7.3.2 视图显示 210
第8章 实时疫情监控系统(腾讯API接口 Seaborn matplotlib实现) 215
8.1 背景介绍 216
8.2 系统分析 216
8.2.1 需求分析 216
8.2.2 数据分析 216
8.3 具体实现 217
8.3.1 列出统计的省和地区的名字 217
8.3.2 查询并显示各地的实时确诊数据 218
8.3.3 绘制实时全国疫情确诊数对比图 219
8.3.4 绘制实时确诊人数、新增确诊人数、死亡人数、治愈人数对比图 220
8.3.5 将实时疫情数据保存到CSV文件 223
8.3.6 绘制国内实时疫情统计图 226
8.3.7 可视化实时疫情的详细数据 227
8.3.8 绘制实时疫情信息统计图 230
8.3.9 绘制本年度国内疫情曲线图 231
8.3.10 统计山东省的实时疫情数据 232
8.3.11 绘制山东省实时疫情数据统计图 235
第9章 个人博客系统(Flask TinyDB实现) 239
9.1 博客系统介绍 240
9.2 可行性分析 240
9.2.1 技术可行性分析:使用TinyDB 240
9.2.2 系统基本要求 241
9.2.3 可行性分析总结 241
9.3 具体实现 242
9.3.1 系统设置 242
9.3.2 后台管理 246
9.3.3 登录认证管理 247
9.3.4 前台日志展示 251
9.3.5 系统模板 255
第10章 电影票房数据可视化系统 (网络爬虫 MySQL Pandas实现) 263
10.1 需求分析 264
10.2 模块架构 264
10.3 爬虫抓取数据 265
10.3.1 分析网页 265
10.3.2 破解反爬 266
10.3.3 构造请求头 269
10.3.4 实现具体爬虫功能 270
10.3.5 将爬取的信息保存到数据库 272
10.4 数据可视化分析 273
10.4.1 电影票房TOP10 273
10.4.2 电影评分TOP10 275
10.4.3 电影人气TOP10 276
10.4.4 每月电影上映数量 278
10.4.5 每月电影票房 279
10.4.6 中外票房对比 280
10.4.7 名利双收TOP10 282
10.4.8 叫座不叫好TOP10 283
10.4.9 电影类型分布 284
第11章 大型3D枪战类冒险游戏 (Panda3D实现) 287
11.1 行业背景介绍 288
11.2 功能模块介绍 288
11.3 系统配置 289
11.3.1 全局信息 289
11.3.2 初始信息 289
11.3.3 音效信息 290
11.3.4 地图纹理 291
11.3.5 实现HUD模块 292
11.3.6 游戏入口 294
11.4 创建精灵 294
11.4.1 主角精灵类Avatar 294
11.4.2 属性信息 297
11.4.3 选择穿戴着装 298
11.5 调试运行 303
第12章 AI人脸识别签到打卡系统 (PyQt5 百度智能云 OpenCV-Python SQLite3实现) 305
12.1 需求分析 306
12.1.1 背景介绍 306
12.1.2 任务目标 306
12.2 模块架构 307
12.3 使用Qt Designer实现主窗口界面 307
12.3.1 设计系统UI主界面 307
12.3.2 将Qt Designer文件转换为Python文件 309
12.4 签到打卡、用户操作和用户组操作 312
12.4.1 使用百度AI之前的准备工作 312
12.4.2 设计UI界面 315
12.4.3 创建摄像头类 318
12.4.4 UI界面的操作处理 319
12.4.5 多线程操作和人脸识别 328
12.4.6 导出打卡签到信息 332
12.5 调试运行 334
猜您喜欢