Python 如何发送包含图片的HTML页面?
我已经编写了一个TCP服务器,它可以完美地处理只包含文本的网页,但我似乎无法发送包含图片的HTML文件。我该怎么做Python 如何发送包含图片的HTML页面?,python,html,tcp,Python,Html,Tcp,我已经编写了一个TCP服务器,它可以完美地处理只包含文本的网页,但我似乎无法发送包含图片的HTML文件。我该怎么做 DIR = "D:/wwwroot/" SERVER = ("server_address", 8820) #server_address replaced with my IP PHRASE_CHART = "D:/wwwroot/phrase_chart.txt" CONTENT_TYPE_CHART = "D:/wwwroot/content_type_chart.txt"
DIR = "D:/wwwroot/"
SERVER = ("server_address", 8820) #server_address replaced with my IP
PHRASE_CHART = "D:/wwwroot/phrase_chart.txt"
CONTENT_TYPE_CHART = "D:/wwwroot/content_type_chart.txt"
DEFAULT_PAGE = "D:/wwwroot/main.html"
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(SERVER)
client_counter = 0
while client_counter <= 10:
server_socket.listen(1)
(client_socket, client_address) = server_socket.accept()
client_counter += 1
while True:
try:
request = client_socket.recv(1024)
request = request[0:request.find("/r/n/r/n")]
if request[0:3] == "GET":
file_name = request[5: request.find("HTTP/1.1") - 1]
if os.path.isfile(DIR + file_name):
page = open(DIR + file_name)
data = ""
for line in page:
data += line
client_socket.send(data)
elif file_name == "":
page = open(DEFAULT_PAGE)
data = ""
for line in page:
data += line
client_socket.send(data)
else:
client_socket.send("")
else:
client_socket.close()
except socket.error:
break
client_socket.close()
server_socket.close()
DIR=“D:/wwwroot/”
服务器=(“服务器地址”,8820)#服务器地址替换为我的IP
PHRASE\u CHART=“D:/wwwroot/PHRASE\u CHART.txt”
CONTENT\u TYPE\u CHART=“D:/wwwroot/CONTENT\u TYPE\u CHART.txt”
默认值\u PAGE=“D:/wwwroot/main.html”
server\u socket=socket.socket(socket.AF\u INET,socket.SOCK\u流)
服务器\u套接字.bind(服务器)
客户端计数器=0
虽然浏览器将发出另一个HTTP GET请求,请求HTML文档链接到的图像(以及任何其他内容),但目前您似乎认为每个传入的请求都是针对文本资源的。您应该使用捕获工具或浏览器网络检查器检查向服务器发出的HTTP请求。如果打开浏览器的开发控制台,您可以看到如何通过来自您选择的常用服务器的多个HTTP GET请求加载页面。