通信交互 socket套接字 文本傳輸
服務端:
#字符串
# import socket
# s = socket.socket()
# s.bind(('0.0.0.0',1234)) #主機ip,端口號
# s.listen() #等待連接
# c,addr = s.accept() #等待連接
# text = c.recv(1024) #接收
# print(text.decode()) #decode將字節數據轉換為字符串
#短文本
# import socket
# s = socket.socket()
# s.bind(('0.0.0.0',1234)) #主機ip,端口號
# s.listen() #等待連接
# c,addr = s.accept() #等待連接
#
# text = c.recv(9080) #接收
# f = open('test1.txt','w',encoding='utf-8') #創建文本
# f.write(text.decode()) #寫入數據
#大文本
import socket
s = socket.socket()
s.bind(('0.0.0.0',1234)) #主機ip,端口號
s.listen() #等待連接
c,addr = s.accept() #等待連接
f = open('test1.txt', 'wb') # 創建文本
while 1:
try:
text = c.recv(1024) #接收
if len(text) != 0:
print(text.decode())
f.write(text.decode()) #寫入數據
except:
print('接收失敗')
客戶端:
# 字符串
import socket
s = socket.socket()
s.connect(('127.0.0.1',1234))#連接服務器的ip地址,端口號
text = 'hi hello'
s.send(text.encode()) #send只能輸出字節數據 encode將字符串轉換為字節數據
print('連接成功')
#短文本
# import socket
# s = socket.socket()
# s.connect(('127.0.0.1',1234))#連接服務器的ip地址,端口號
#
# f = open('test.txt','r',encoding='utf-8') #讀取文本
# text = f.read() #讀取文本信息
# s.send(text.encode()) #發送信息
# print('連接成功')
#大文本
import socket
s = socket.socket()
s.connect(('127.0.0.1',1234))#連接服務器的ip地址,端口號
f = open('test2.txt','rb') #讀取文本
while 1:
try:
text = f.read(1024) #讀取文本信息
if len(text) == 0:
break
s.sendall(text) #發送信息
print('連接成功')
except:
print('發送失敗')

浙公網安備 33010602011771號