代码拉取完成,页面将自动刷新
import os
import socket
import random
#这里把端口单独领出来是因为上学期做实验的时候很容易出现端口占用的情况,放这容易改
PORT = 8081
MAXSIZE = 1024
#这里是设置了一个结束符,当client输入eixt的时候就结束通信
EXIT_SYMBOL = "exit"
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#这里前面是地址,后面是端口,为了方便测试就把地址设为本机,127.0.0.0,0.0.0.0,localhost都是可以的
server_socket.bind(('0.0.0.0', PORT))
server_socket.listen(1)
print(f"Server is listening on port {PORT}...")
client_socket, client_address = server_socket.accept()
print("Client connected!")
try:
with open('file1.txt', 'r',encoding='utf-8') as file1, open('file2.txt', 'w',encoding='utf-8') as file2:
while True:
data = client_socket.recv(MAXSIZE).decode('utf-8')
if not data:
break
if data.startswith(EXIT_SYMBOL):
print("Received exit command from client.")
break
print(data)
file2.write(data)
file1.seek(0)
file1_content = file1.read(MAXSIZE - 1)
data_len = random.randint(1, len(file1_content))
client_socket.sendall(file1_content[:data_len].encode())
except Exception as e:
print(f"An error occurred: {e}")
finally:
client_socket.close()
server_socket.close()
print("Server closed.")
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。