更多课程 选择中心


Python培训

400-996-5531

python开发web服务器——搭建简易网站

  • 发布:学习与分享
  • 来源: Python互动中心
  • 时间:2017-11-16 16:38

目标

用已有的丰富图片资源建一个看图网站

条件

开发语言:

python3

库:

flask :一个开源的python web服务器框架

jinja2:flask默认的模板引擎

编辑器:

推荐pycharm

一个最简单的web服务器

python给我们提供了一个接口:WSGI:Web Server Gateway Interface

它只要求Web开发者实现一个函数,就可以响应HTTP请求。而不用触到TCP连接、HTTP原始请求和响应格式。

下面实例一个最简单的web应用:

environ:一个包含所有HTTP请求信息的dict对象;

start_response:一个发送HTTP响应的函数。

将两个脚本放在同一目录下,运行server.py,访问 http://127.0.0.1:8000 就能看到效果了。

处理url

其实web应用,就是对不同url的处理。

我们将hello.py进行修改

这样就会处理两个url,’/’和’/signin’

当然你可以这么一直写下去…如果你不嫌累的话。

使用模板

既然上面的方法太累太慢,那我们学点高级的:

flask

看代码

注意,这个是单文件。

来分析这个脚本:

Flask通过Python的装饰器在内部自动地把URL和函数给关联起来。

启动运行后,我们访问

‘/’,看到的页面是一个“HOME”单词

‘/signin’,此刻是通过GET访问,看到的是一个表单,填写’admin’和’password’,点击登录 ——>

‘/signin’,此刻是通过POST访问,看但的是Hello, admin!或者Bad username or password.

对于不了解GET与POST和HTML表单的同学,推荐去学习html基础。

但这样还是有些不灵活,用户访问看到的内容需要全部写出来,不能复用,太麻烦

使用模板引擎

模板解决了我们上面的问题。先看一段代码

这里读取了根目录下所有文件的名字,将其传给html模板页面

然后,在.py的同目录下建立目录templates,这里存放的是我们的模板,模板的特殊在于可以使用python指令及变量在html里

home.html

{% %} 中写的是指令

{{ }} 中写的是变量

所以最终的结果是,会生成多个标签,标签的名字就是目录名。

以上基础教程参照廖雪峰。

那么,基础已经将完了,接下来就会是成品了:

成品

用我们上次爬取的图片来建站,good idea!

这里在.py脚本同目录下建立一个static目录存放图片。(图片放在.py所在目录外层会链接不到)

然后是模板文件

welcome.html

pic.html

error.html

最后成品网站在这#

端口为随机端口,范围在2000-2100之中,相信大家都能找到吧。

如果外网还是无法访问请关闭防火墙!!

最后一句:本节只是给大家一个示范,python如何写web服务器,个人感觉比apache+php有趣得多!

本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:作图详解 | 利用Python绘制技术功效图的方法
下一篇:浅谈 python 编程世界观

Python IDE推荐7个你可能会错过的Python IDE

Python面试题之Python中爬虫框架或模块的区别

2021年Python面试题及答案汇总详解

python数据分析,你需要这些工具

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省