Socket通常也稱作"套接字",用於描述IP地址和端口,是一個通信鏈的句柄,可以用來實現不同虛擬機或不同計算機之間的通信。
socket服務端示例:
import socket ip_port = ('127.0.0.1',9999) #設定服務端的IP地址與端口。 sk = socket.socket() # 調用socket構造函數。 sk.bind(ip_port) # 使用bind方法綁定服務端IP與端口。也可以理解成向系統注冊IP與端口信息。 sk.listen(5) # 設定最多連接數。 while True: print('server waiting...') conn,addr = sk.accept() # 服務器套接字通過socket的accept方法等待客戶請求一個連接。 client_data = conn.recv(1024) # 設定每次最多能接受1024個字節 print(str(client_data,'utf8')) #打印服務端接收客戶端的信息。 conn.sendall(bytes('不要回答,不要回答,不要回答','utf8')) # 使用sendall方法發信息給客戶端。 conn.close() #關閉連接。socket服務端示例:
socket客戶端示例:
import socket ip_port = ('127.0.0.1',9999) # 設定好服務端的IP與開放的端口。 sk = socket.socket() #調用socket構造函數 sk.connect(ip_port) #使用socket的connect方法連接服務器 sk.sendall(bytes('請求占領地球','utf8')) # 使用sendall方法發信息給服務端。 server_reply = sk.recv(1024) # 設定每次最多能接受1024個字節 print(str(server_reply,'utf8')) #打印出接收到的服務端反回信息。 sk.close() #關閉socket連接。socket客戶端示例: