本系列文章为本人学习网课的笔记,一切版权归原作所有。

1、框架技术点

2、多进程构建服务

建立web_server.py文件:

#!/usr/bin/env python
# 多进程实现服务器演示
import socket
import re
import multiprocessingdef service_client(new_socket):"""为这个客户端返回数据"""# 1.接收浏览器发送过来的请求,即http请求request = new_socket.recv(1024).decode("utf-8")request_lines = request.splitlines()print("")print("*"*30)print(request_lines)# GET /index.html HTTP/1.1# get post put delfile_name = ""ret = re.match(r"[^/]+(/[^ ]*)", request_lines[0])print("*"*30)if ret:file_name = ret.group(1)if file_name == "/":file_name = "/index.html"# 2.返回http格式的数据,给浏览器try:f = open("./html" + file_name, "rb")except:response = "HTTP/1.1 404 NOT FOUND\r\n"response += "\r\n"response += "----------file not found-------"new_socket.send(response.encode("utf-8"))else:html_content = f.read()f.close()# 2.1 准备发送给浏览器的数据...headerresponse = "HTTP/1.1 200 OK\r\n"response += "\r\n"# 将response header 发送给浏览器new_socket.send(response.encode("utf-8"))# 将response body 发送给浏览器new_socket.send(html_content)# 关闭套接new_socket.close()def main():"""用来完成整体的控制"""# 1. 创建套接字tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 连接释放后,马上释放资源tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1)# 2.绑定tcp_server_socket.bind(("127.0.0.1",7890))# 3.变为监听套接字tcp_server_socket.listen(128)while True:# 4.等待新客户端的连接print("等待客户端连接中...")new_socket, client_addr = tcp_server_socket.accept()# 5.为这个客户端服务p = multiprocessing.Process(target=service_client, args=(new_socket,))p.start()# 关闭监听套接字tcp_server_socket.close()if __name__ == "__main__":main()

3、运行效果

教程实现效果:

本机实现效果:

Python mini-web框架框架开发01相关推荐

  1. python的web应用程序开发(Django框架)

    python的web应用程序开发(Django框架) 1.安装Django并开启网页服务器 pip install django # 安装Django包 django-admin startproje ...

  2. python:web后台框架简单实现

    python:web后台框架 目录 简介:BS开发和http协议 WSGI概述 类flask框架简单实现 response使用及wsgify装饰器 路由 模板原理 jinjia2模板技术 模块化,ja ...

  3. python django web典型模块开发实战_带你读《Python Django Web典型模块 开发实战》之一:从新浪微博聊起多端应用-阿里云开发者社区...

    Python Django Web典型模块 开发实战 点击查看第二章 点击查看第三章 寇雪松 编著 第1章 从新浪微博聊起多端应用 当人们听到"新浪",脑海里第一个浮现的关联词是& ...

  4. 基于python的界面自动化测试-基于Selenium+Python的web自动化测试框架

    一.什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.S ...

  5. Django--基于Python的Web应用框架

    基本介绍 Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架. 使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内 ...

  6. python的web自动化框架实例_Selenium基于Python web自动化测试框架 -- PO

    关于selenium测试框架首先想到的就是PO模型,简单说下PO模型 PO模型的概念和理解: PO就是一个设计思想,将代码以页面为单位进行组织,针对这个页面上的所有信息.相关操作都放到一个类中,从而使 ...

  7. 基于Selenium+Python的web自动化测试框架

    一.什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.S ...

  8. 基于Selenium+Python的web自动化测试框架(附框架源码+项目实战)

    目录 一.什么是Selenium? 二.自动化测试框架 三.自动化框架的设计和实现 四.需要改进的模块 五.总结 总结感谢每一个认真阅读我文章的人!!! 重点:配套学习资料和视频教学 一.什么是Sel ...

  9. python的web应用框架_python应用webpy框架

    django和webpy都是python的web开发框架.Django的主要目的是简便.快速的开发数据库驱动的网站.它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架 ...

  10. python之web自动化测试框架

    梳理下搭建web自动化框架的流程: 创建目录: cases:存放测试用例,unittest框架要求用例名必须以test开头,所以命名test_case.py test_case.py代码如下:继承un ...

最新文章

  1. MAVEN约定的目录结构
  2. 技术人员是如何分析游戏环境的? 《影之诗》牌组趋势分析
  3. c++内存管理-VC6
  4. jquery validate使用总结
  5. 7-1 ATM机类结构设计(一) (100 分)
  6. 在大公司天天调参数,感觉快废了
  7. JSP页面是否需要重新编译--checkInterval
  8. 数据同步一致性_微服务架构:利用事件驱动实现最终一致性
  9. RK3288 查看时钟树
  10. 好用靠谱的人事管理软件推荐?
  11. c语言做贪吃蛇怎么记住成绩,用C语言编写贪吃蛇的思路是怎样的?
  12. 阿里热更新Sophix的故事
  13. centos7随机生成密码
  14. 网站备案需要什么材料
  15. 基于FPGA的ROM-VGA图像处理(老师好帅系列)
  16. mosquitto1.6.2 Error: A TLS error occurred.(解决)
  17. C++实验4-项目7穷举法解决组合问题-百钱百鸡问题
  18. 组合模式-Composite Pattern
  19. mysql数据库显示unknown option '-d' 错误的处理办法
  20. 谷歌翻译下载-免费谷歌翻译软件下载

热门文章

  1. java实现爬虫爬网站图片
  2. 第七章 MyBatis的核心配置
  3. [2015-06-10 20:53:50 - Android SDK] Error when loading the SDK:
  4. 基于双闭环PID控制器的永磁同步电机控制系统仿真
  5. 如何把电脑变成蓝牙音箱?
  6. php生成字母头像,php 按照中文字母名字排序,并把相应的头像显示出来
  7. 币圈投资比人生风险还大吗?
  8. DSGdata Inc.公司简介
  9. 【笔记】Qrcode、zxing制作二维码
  10. kombu.exceptions.EncodeError: Object of type NewUser is not JSON serializable