1.Flask简介
Flask 的官网: Welcome to Flask — Flask Documentation (2.3.x)
Flask 中文文档: 欢迎来到 Flask 的世界 — Flask中文文档(2.3.x)
Python 的 Web程序开发工具很多。Flask是一种非常容易上手的Python Web开发框架,不需要知道太多的MVC的概念,只需要具备基本的Python的开发技能,就可以开发出一个Web应用。
(1)Flask 安装
pip install flask
(2)Flask 实例
importflask
"""
执行该程序可以看到显示 http://127.0.0.1:5000 的Web地址,
"""
# 初始化一个Flask对象,参数__name__是程序的名称
app=flask.Flask(__name__)
"""
这是一段路由控制语句,每个路由地址用@app.route(...)来指明,
在访问相对地址是 "/" 时就执行函数hello()
"""
# 在游览器中输入http://127.0.0.1:5000 ————看到"你好"
@app.route("/")
defhello():
return"你好"
# 在游览器中输入http://127.0.0.1:5000/hi ————看到"Hi,你好"
@app.route("/hi")
defhi():
return"Hi,你好"
# app.run()执行后就会启动了一个Web服务器,它的默认地址是http://127.0.0.1:5000
if__name__=="__main__":
app.run()
(3) Flask 显示静态网页
如果在程序的同一个文件夹中有一个静态网页,如index.html,那么很容易用Flask编写一个Web网站程序server.py,它的主页就是index.html。
server.py程序如下:
importflask
"""显示一个静态网页"""
"""
该程序的功能是启动一个Web服务,在访问网站时读取同一个文件夹下的index.html文件,
然后向客户端(游览器)返回index.html文件的内容
"""
app=flask.Flask(__name__)
@app.route("/")
defindex():
try:
fobj=open("index.html", "rb")
data=fobj.read()
fobj.close()
returndata
exceptExceptionaserr:
returnstr(err)
if__name__=="__main__":
app.run()
index.html程序如下:
<!DOCTYPE html>
<html>
<head>
<metacharset="UTF-8">
<title>Flask显示静态网页</title>
</head>
<body>
<h1>欢迎使用Python Flask Web</h1>
我们很容易用Python Flask制作一个Web网站
</body>
</html>
运行server.py文件后访问网址http://127.0.0.1:5000,结果如下图:
2.Urllib 程序包访问Web网站
上述server.py程序的这个网站除了可以使用游览器访问外,也可以使用Urllib程序包中的相关函数编写程序来访问。设计一个
client.py程序如下:
# Urllib程序包访问Web网站
"""
server.py程序的这个网站除了可以使用游览器访问外,也可以使用Urllib程序包中的相关函数编写程序来访问
"""
importurllib.request # 作用:访问网站
url="http://127.0.0.1:5000"
html=urllib.request.urlopen(url) # 作用:打开url网站的网址
html=html.read() # 读出的是 二进制 数据
html=html.decode() # 把二进制数据html——>string 默认时decode()使用UTF-8编码,也可以指定转换编码,如下
# html = html.decode("utf-8")
# html = html.decode("gbk")
print(html)
结果如下图:
由此可见传递过来的就是index.html的网页数据。
下一篇文章:1.3 GET方法访问网站