Python之web服务器-返回404页面数据(四)
# 导入模块
import socket
import re
if __name__ = '__main__':
# 1.创建tcp服务端套接字
tcp_server_socket = socket.socket(socket.AF_INET , socket.SOKE_STREAM)
# .设置端口号复用
tcp_server_socket.
# 2. 绑定端口号
tcp_server_socket.bind(("", 9090))
# 3. 设置监听
tcp_erver_socket.listen(128)
while True:
# 4.等待客户端的连接请求,并获取新的套接字和客户端的IP
service_client_socket, ip_port = tcp_server_socket.accept()
# 5.获取客户端发送的http请求报文数据
http_request_data = service_client_socket.recv(4096)
# 6.对二进制数据进行解码
http_request_content = http_request_data.dacode("utf-8")
print("http_request_content")
# 7.正则匹配解码后客户端的请求报文
match_obj = re.search("/\S*", http_request_content)
if match_obj:
# 7.1 匹配成功, 获取请求的资源连接
request_path = match_obj.group()
# 7.2 判断请求的路径是否是根路径,如果是根路径指定对应的文件
if request_path == "/":
try:
# 7.3 打开文件读取文件数据
with open("static" + request_path , "rb") as file:
# 7.4 读取文件中的全部数据
file_data = file.read()
except