# tcp服务器无限为多个客户端服务
import socket
class Tcp_socket(object):
def main(self):
# 新建一个套接字
self.tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定服务器ip和端口
self.tcp_socket.bind(('', 8899))
# 监听
self.tcp_socket.listen(128)
while True:
# 等待一个新的客户端的到来
print('等待一个新的客户端的到来:')
client_socket, client_addr = self.tcp_socket.accept()
print('{}链接完成'.format(client_addr))
# 接受客户端发来色数据
while True:
recv_data = client_socket.recv(1024)
# 客户端数据展示
print(recv_data.decode('gbk'))
if not recv_data:
break
else:
# 给客户端会送数据,表示已经成功接受客户端的数据
client_socket.send('数据已经接受完毕'.encode('gbk'))
# 关闭客户端套接字
client_socket.close()
# 关闭服务器的套接字
self.tcp_socket.close()
if __name__ == '__main__':
tc = Tcp_socket()
tc.main()