内容正文:
8.6第三方库应用单元总结
程序设计基础Python
同步精品课堂
高教版
掌握国家标准《机械制图》中有关图幅、比例、字体图线等基本规定。
教学目标
一
1. 掌握第三方库的两种安装方式,熟记核心库:Flask、requests、bs4、openpyxl的关键语法。
2. 梳理整章知识体系,明确各模块间的关联,避免知识点混淆。
3. 理解多库综合应用的基本逻辑
教学重难点
二
重点:第三方库的核心用法;第三方库的两种安装方式。
难点:多个第三方库的综合应用;整章知识体系的梳理与整合。
“同学们,今天我们要开启本教材Python学习的最后一章复习课啦!第八章的第三方库应用,让我们从只会写基础代码的‘新手’,变成了能做Web网页、能爬取网上数据、能自动化处理Excel的‘小能手’。这些技能可不是单纯的理论,不管是办公室的报表处理,还是简单的网页开发,都能实实在在派上用场。今天我们不仅要把这些‘零散的知识点’重新梳理一遍,还要把它们串起来完成综合任务,同时给自己的这段Python学习之旅梳理出清晰的知识框架,画一个圆满的句号!”
导入新课
三
“同学们,今天我们要开启本教材Python学习的最后一章复习课啦!第八章的第三方库应用,让我们从只会写基础代码的‘新手’,变成了能做Web网页、能爬取网上数据、能自动化处理Excel的‘小能手’。这些技能可不是单纯的理论,不管是办公室的报表处理,还是简单的网页开发,都能实实在在派上用场。今天我们不仅要把这些‘零散的知识点’重新梳理一遍,还要把它们串起来完成综合任务,同时给自己的这段Python学习之旅梳理出清晰的知识框架,画一个圆满的句号!”
新知讲授
四
一、第三方库安装知识梳理
8.6第三方应用单元总结
第三方库安装
网络应用程序开发
网络爬虫应用
办公应用
1
2
3
4
新知讲授
四
1
一、第三方库安装知识梳理
第三方库安装
2
网络应用程序开发
3
网络爬虫应用
4
办公应用
安装virtualenv
安装第三方模块
步骤
激活
pip install vitrualenv
activate
pip install flask
注意:不要在全局下安装,要在虚拟环境下安装
新知讲授
四
1
一、第三方库安装知识梳理
第三方库安装
2
网络应用程序开发
3
网络爬虫应用
4
办公应用
第一个flask程序
模版和静态文件
模版的基本使用方法
app.run(debug=True)
flask基础
开启调试模版的语法
使用pycharm开启调试的步骤
flask路由
Run菜单/Edit configuration/FLASK_DEBUG
静态参数路由
视图函数绑定多个url
动态参数路由
构造url
http方法
request属性
模版的中使用变量
静态文件
新知讲授
四
1
一、第三方库安装知识梳理
第三方库安装
2
网络应用程序开发
3
网络爬虫应用
4
办公应用
网络爬虫概述
tag标签
reequests模块
requests异常处理
bs4模块
创建beautifulsoup对象的命令
支持的版本
使用方法和对象属性
try...except的用法
tag标签内容获取和属性
tag标签的查找
新知讲授
四
1
一、第三方库安装知识梳理
第三方库安装
2
网络应用程序开发
3
网络爬虫应用
4
办公应用
openpyxl的介绍
openpyxl关于excel工作表操作方式
openpyxl关于execel工作薄的操作方式
openpyxl单元格操作方式
新知讲授
四
一、第三方库安装知识梳理
静态路由参数
@Flask对象名.route(URL字符串)
def 自定义函数():
代码块
该方法称为注册静态参数路由
自定义函数称之为视图函数,而route()称之为装饰器。
URL字符串与自定义函数建立映射关系。当用户在浏览器访问“http://127.0.0.1:5000/URL字符串”,浏览器页面
出现的是自定义函数的执行结果
新知讲授
四
一、第三方库安装知识梳理
视图函数绑定多个url
@Flask对象名.route(URL字符串1)
@Flask对象名.route(URL字符串2)
def 自定义函数():
代码块
上述代码可以将该视图函数绑定两个url,即把URL字符串1和URL字符串2都绑定到自定义函数上自定义函数称之为视图函数,而route()称之为装饰器。
新知讲授
四
一、第三方库安装知识梳理
动态路由
@Flask对象名.route(URL字符串/<变量名>)
def 自定义函数(变量名):
代码块
该方法称为注册动态参数路由
自通过向规则参数添加变量,可以动态构建URL。此变量标记为<变量名>,它作为关键字参数传递给与规则相关联的视图函数。上述代码中的<name>告诉装饰器它是一个变量。并且传递给自定义函数这个视图函数。
新知讲授
四
一、第三方库安装知识梳理
构造url
url_for()
用url_for()来给指定的函数构造URL
它接受函数名作为第一个参数,也接收对应URL规则的变量部分的命名参数。
未知变量部分会添加到URL末尾作为查询参数
新知讲授
四
一、第三方库安装知识梳理
http方法
方法 描述
GET 浏览器告知服务器,只获取页面上的信息并发给服务器。这是最常用的方法
POST 用于将HTML表单数据发送到服务器。通过POST方法接收的数据不会被服务器缓存
HEAD 与GET相同,但没有响应主体,只有消息头
PUT 把消息本体中的消息发送到一个URL,跟POST类似但不常用
DELETE 删除给定位置的信息
OPTIONS 给客户端提供一个敏捷的途径来弄清这个URL支持哪些HTTP方法
新知讲授
四
一、第三方库安装知识梳理
模版使用方法
render_template(template_name,**context)
template_name,模板文件名,字符串型参数,不可省略。一般情况我们会在项目文件夹下创建templates文件夹用于存放所有模板文件。context是模板参数,由模板参数和对应的值组成的字典,可以省略。
render_template()函数返回替换模板参数后的模板文本。
新知讲授
四
一、第三方库安装知识梳理
模版中使用变量
{{变量名}}
在模板中使用的{{变量名}}结构表示一个变量,它是一种特殊的占位符,告诉模板引擎这个位置的值从渲染模板时使用的数据中获取。
jinja2能识别所有类型的变量,列表、字典和对象也能识别。
在render_template参数中以key=value形式传入变量,在html中使用{{key}}来显示传入的变量。
新知讲授
四
一、第三方库安装知识梳理
requests使用方法
res=requests.get(url,params=None,**kwargs)
构造一个向服务器请求资源的request对象,返回一个response对象即res,其包含从服务器返回的所有的相关资源。
get方法中的url参数是获取页面的url链接。params参数代表url中的额外参数,字典或字节流格式,可选。**kwargs参数是12个控制访问的参数,可选。
外通常用res.status_code来检查返回的response对象的状态,如果状态是200,就可以用res.text、res.encoding、res.apparent_encoding和res.content等解析返回的内容。
新知讲授
四
一、第三方库安装知识梳理
try...except的用法
采用了try...except结构来进行异常处理,这也是Python常用的异常处理方式。程序首先执行try中的代码块,如果执行过程中出现异常,系统会自动生成异常类型,并将该异常提交给Python解释器,此过程称为捕获异常。当Python解释器收到异常对象时,会寻找能处理该异常对象的except块,如果找到合适的except块,则把该异常对象交给except块处理,这个过程被称为处理异常。如果Python解释器找不到处理异常的except块,则程序终止运行,Python解释器也将退出。
新知讲授
四
一、第三方库安装知识梳理
构建beautifulsoup对象的方法
BeautifulSoup(markup,features,…)
上述方法中我们着重介绍前两个参数,markup表示要解析的文档字符串或文件对象;features表示解析器的名称,bs4支持的解析器包括Python标准库(html.parser)、lxml XML解析器(lxml-xml)、lxml HTML解析器(lxml)和html5lib(html5lib),其余参数都可以用默认值。
上述创建BeautifulSoup对象实际python是调佣BeautifulSoup类的构造函数__init__(),当创建BeautifulSoup类的对象时,系统会自动且第一个调用构造函数。我们只需传递适当的参数即可。
新知讲授
四
一、第三方库安装知识梳理
Tag内容的获取
BeautifulSoup对象名.标签
BeautifulSoup对象名.标签.name
BeautifulSoup对象名.标签.attrs
BeautifulSoup对象名.标签.string
新知讲授
四
一、第三方库安装知识梳理
标签的查找
BeautifulSoup对象名.select(self,selector, namespaces=None, limit=None,**kwargs)
select方法返回的是类似一个列表的数据类型。
selector参数是一个字符串表示一个css选择器,选择器可以使用标签、类、id等进行选择。例如选择所有a标签就用“a”表示;如果用类名选择需要在类名前面加英文点号;如果用id查找需要在id名字前加#。
新知讲授
四
一、第三方库安装知识梳理
openpyxl关于execel工作薄的操作方式
Workbook()
load_workbook(filename,read_only=False,…)
Workbook对象名.save(self,filename)
Workbook对象名.close()
Workbook对象名.create_sheet(self,title=None,index=None)
Workbook对象名.sheetnames
Workbook对象名.worksheets
Workbook对象名["表名"]
Workbook对象名.remove_sheet(self,worksheet)
新知讲授
四
一、第三方库安装知识梳理
openpyxl关于excel工作表操作方式
sheet对象名.cell(row,column).value
上述语句可以获取特定单元格的值也可以给特定单元格赋值,row代表行号,column代表列号。
sheet对象名.cell(1,1).value="test"表示将A1单元格的值设定为"test",如果是B4单元格则是第四行第二列即cell(4,2)。
res=sheet对象名.cell(3,2).value表示将B3单元格值赋值给res变量。
新知讲授
四
一、第三方库安装知识梳理
openpyxl单元格操作方式
fn=openpyxl.styles.fonts.Font(name,size,…)
cell(i,j).font=fn
sheet对象名.merge_cells(self,range_string=None,start_row =None,start_column=None,end_row=None,end_column=None)
align=openpyxl.styles.Alignment(…)
sheet对象名["A1"].alignment=align
师生互动
五
第一:根据所回顾的知识,自己完成个人知识思维导图,小组内互相交换查看,指出对方框架中的遗漏点和错误点。
第二:随机抽3名同学的思维导图,优化知识梳理方式
8.6第三方应用单元总结
第三方库安装
网络应用程序开发
网络爬虫应用
办公应用
1:最好化抽象为形象
2:最好用不用颜色来代表不同的分支
随堂练习
1. Flask 通过________函数渲染模板。
2. 在 Python 中使用 pip 安装 Flask 模块的命令为________。
1.【答案】 render_template
【解析】Flask 依赖 Jinja2 模板引擎, render_template() 是加载并渲染指定模板文件的核心函数,需传入模板文件名及待渲染的变量。
2.【答案】 pip install flask
【解析】pip 是 Python 官方的包管理工具,安装第三方库的标准语法为 pip install 库名 ,Flask 库的名称需使用小写形式。
六
随堂练习
3. 在 Flask 中通过视图函数返回 URL 是用________函数。
4. 在 openpyxl 模块中通过________函数合并单元格。
3.【答案】 url_for
【解析】 url_for() 用于“反向构造 URL”,可根据视图函数名生成对应的 URL,语法为 url_for('视图函数名', 参数=值) 。
4.【答案】 merge_cells
【解析】openpyxl 中工作表对象的 merge_cells() 方法用于合并单元格。
六
随堂练习
5. 在 openpyxl 模块中保存工作簿的函数是________。
6. 在 requests 模块中通过________函数爬取网页内容。
5.【答案】 save
【解析】openpyxl 工作簿对象( Workbook )的 save() 方法用于保存文件,语法为 wb.save('文件路径.xlsx') 。
6.【答案】 get
【解析】 requests.get(url) 是爬取网页的常用方法;也可通过 requests.request('GET', url) 实现相同功能。
六
随堂练习
1. Flask 不能为 1 个视图函数绑定多个 URL。
2. pip 指令可以用来安装 Python 第三方库模块。
3. Flask 中的 route()装饰器用于将 URL 绑定到函数。
1.【答案】×
【解析】Flask 支持为同一个视图函数添加多个 @app.route() 装饰器,实现“多个 URL 对应同一个视图函数”的效果。
2.【答案】√
【解析】pip 是 Python 官方的第三方库管理工具,核心功能包括安装、卸载、升级第三方库。
3.【答案】√
【解析】 @app.route(URL规则) 装饰器的核心作用是将指定的 URL 规则与下方的视图函数绑定,用户访问该 URL 时会触发对应的函数。
六
随堂练习
4. 在 openpyxl 模块中 Workbook()表示创建 1 个工作表对象。
5. 在 openpyxl 中对齐方式 centerContinuous 表示两端对齐。
4.【答案】×
【解析】 Workbook() 创建的是工作簿对象,工作簿默认包含 1 个工作表对象,并非直接创建工作表对象。
5.【答案】×
【解析】 centerContinuous 表示“跨列居中”;两端对齐对应的对齐方式是 distributed 。
六
课堂小结
八
谢谢
$