欢迎光临散文网 会员登陆 & 注册

如何用Python Flask来制作第一个Web程序?

2020-03-09 23:50 作者:热心的裴同学  | 我要投稿

最近一直在研究Flask这个东西,想把学习的过程分享给大家

那现在开始吧



我真的万万没想到bilibili专栏不能导入markdown文件

委屈各位了,高清无码PDF见

链接:https://pan.baidu.com/s/1eyqbl0FKZV10xmdYSUIMtA 

提取码:uzjw


先插入封面



三分钟Flask从入门到放弃

第一分钟 - 名词解释

  • Python:是一种解释型脚本语言,可以应用于诸多领域。

  • Flask:是一个使用 Python 编写的轻量级 Web 应用框架。

  • Web:一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统。

    天天网上冲浪你能不知道Web是啥???

第二分钟 - 安装Flask

直接执行

pip install Flask

更换安装源

如果你的网络条件不是很好的话建议临时使用国内安装源

临时使用 来自清华大学开源软件镜像站

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U

再次执行 pip install Flask

如果你没有看到一些红色的信息或者是上面写满了ERROR

那么恭喜你你已经成功安装了Flask框架

第三分钟 - 编写第一个Flask程序

找个文件夹(建议不要中文路径),

新建文本文件

写入以下程序代码

保存更改后缀名为.py

比如这样

这是一个最小的Flask应用程序

from flask import Flask

app = Flask(__name__)


@app.route('/')

def hello_world():

    return '你好,世界!'

如何运行它?

  1. 优雅端庄式:

    第一步:首先打开你的终端命令行

    第二步:cd到存放这个文件的目录

    第三步:设置一个临时环境变量FLASK_APP

    Linux&Mac: export FLASK_APP=hello.py

    Windows: set FLASK_APP=hello.py

    PowerShell

    (Windows里那个蓝色的命令行): $env:FLASK_APP = "hello.py"


    做好这些确认无误后就可以使用 flask run命令来开启一个flask的测试服务器了


你还可以使用python -m fkask run来开启这个服务器

如果你希望它停下来的话请按Ctrl+c

`2 简单粗暴式:

在文件的最下方补充一下代码

if __name__ == '__main__':    app.run()

cd到你的项目目录

像执行普通文件一样去执行它

python app.py

三分钟倒计时已经结束了,那现在又发生了什么?

刚刚的操作已经让我们使用flask运行起来了一个测试用的web服务器,那我们如何去访问它?


请注意Flask启动时为我们所打印出来的信息,将他粘贴到浏览器


很好,就是这样

再次打开我们的代码,试图去更改我们能看懂的文字

from flask import Flask


app = Flask(__name__)


@app.route('/')

def hello_world():

    return "Hello"

if __name__ == '__main__':

    app.run()

将服务器关闭再次开启Press CTRL+C to quit

很好,他没有让我们操心,这是一台懂事的服务器

让我们加上注释来康康(看看)发了什么

# 从flask模块中导入Flask类

from flask import Flask

# 将Flask类实例化出来对象app

app = Flask(__name__)


# 使用了route装饰器来装饰hello_world()函数规定哪个链接可以执行这个函数

# 这里的斜杠就是我们的根目录http://127.0.0.1:5000/

@app.route('/')

def hello_world():

    # 函数的返回值就是我们最终要在浏览器中看到的信息

    return "Hello"

# 如果这个文件被执行的时候不是以模块的方式被导入的话就执行下面的东西

if __name__ == '__main__':

    # 执行这个方法之后就会运行我们的测试服务器了

    app.run()

  1. 首先我们导入了 Flask 类。 该类的实例将会成为我们的应用。

  2. 接着我们创建一个该类的实例。

    第一个参数是应用模块或者包的名称。

    他的主要作用是告诉flask我们当前是以文件方式进行执行还是按照模块的方式进行导入。只有这样flask应用才能准确无误的找到这个模块目录下的其他需要的文件.

  3. 接下来我们使用了route装饰器来装饰了hello_world()

    这个装饰器的主要作用就是告诉flask应用哪个路径被访问的时候执行下面的函数,这个函数的返回值就是我们在浏览器中看到的页面

  4. 下面的内容则是为了我们可以直接执行这个python文件所添加的内容,这样省去了在命令行设置环境变量和执行的时间

    上文在"优雅端庄式"启动服务器时,app.py是作为模块被其他程序导入的,__name__就是这个模块的名称

    "简单粗暴式"则是直接执行了这个文件,__name__就是"__main__"

怎样让家里的所有人看到我们的成果

众所周知(不知道请自行百度关键词"本地回环地址")127.0.0.1这个地址只能在我们自己的机器上使用,要想他人访问我们的服务器就必须让他人知道我们的ip地址

可以在windows命令行中使用ipconfig命令来看到自己的ip地址

如果你的手机和电脑连接的是同一台路由器的话你也许可以试试拿起手机去访问这个地址,

请注意:这个测试服务器所使用的端口号为5000

访问的同时请带上它

Sorry,这样直接访问是访问不到的

Q:如何才能让别人也能访问到这个地址

A:告诉服务器,你要让哪些地址可以被访问

怎么做呢?

使用命令行启动时:

flask run --host="192.168.31.200"

那我想用简单磁暴的启动方法怎么办呢?

if __name__ == '__main__':

    app.run(host="192.168.31.200")


这样就搞定了

这样只是监听了特定的ip地址可以被访问,那如果我电脑上有多个ip呢?

更加加单磁暴的方法

flask run --host="0.0.0.0"
比着葫芦画瓢:

在代码中添加

   app.run(host="0.0.0.0")

这样你就可以在任何地方打开这个页面了


如果我不想输入这个烦人的端口号又该如何修改它呢?

众所周知Http服务默认端口号是80

我们将端口设置为80就可以抛弃它了

简单粗暴式:

if __name__ == '__main__':    # 执行这个方法之后就会运行我们的测试服务器了    app.run(host="0.0.0.0", port=80)


比葫芦画瓢式:

flask run --host=0.0.0.0 --port=80

先停一下

虽然flask被称为"微"框架,但是实际上flask中的内容是非常非常多的.我们也可以使用围绕flask开发的一些扩展来增强flask的功能

这些内容不是一句两句可以讲得完的,我们需要更多的时间去了解它们

所有,今天就先介绍到这里

小结:今天够干啥了?

今天主要是建立起了flask开发环境,安装了flask框架,介绍了flask的最小应用是怎样构成的,然后学会了更改flask应用监听的ip地址和端口号

下次,我会介绍一下flask的路由和模板的使用

下次见


如何用Python Flask来制作第一个Web程序?的评论 (共 条)

分享到微博请遵守国家法律