作業(yè):
- 客戶端和服務(wù)器聊天吊输,可以一直聊天声畏,直到一方發(fā)送’拜拜’。
然后就可以和下一個(gè)人一直聊
(服務(wù)器)
import socket
server = socket.socket()
server.bind(('10.7.187.72', 8086))
server.listen(1024)
while True:
conversation, addr = server.accept()
print('接受到請(qǐng)求!')
while True:
recv_data = conversation.recv(1024)
print('客戶端:', recv_data.decode('utf-8'))
if recv_data.decode('utf-8') == '拜拜':
break
message = input('服務(wù)器:')
conversation.send(message.encode('utf-8'))
if message == '拜拜':
break
(客戶端)
import socket
client = socket.socket()
client.connect(('10.7.187.72', 8086))
while True:
message = input('客戶端:')
client.send(message.encode('utf-8'))
if message == '拜拜':
break
recv_data = client.recv(1024)
print('客戶端:', recv_data.decode('utf-8'))
if recv_data.decode('utf-8') == '拜拜':
break
2.客戶端給服務(wù)器發(fā)送請(qǐng)求娄帖,請(qǐng)求成功后也祠,
客戶端給服務(wù)發(fā)送‘1’,服務(wù)器就給客戶端發(fā)送一張圖片近速;
客戶端給服務(wù)發(fā)送‘2’诈嘿,服務(wù)器就給客戶端返回一個(gè)json文件中的內(nèi)容;
客戶端給服務(wù)發(fā)送‘3’, 服務(wù)器返回’拜拜’,然后斷開(kāi)連接
(服務(wù)器)
import socket
server = socket.socket()
server.bind(('10.7.187.72', 8100))
server.listen(1024)
while True:
conversation, addr = server.accept()
print('接收到請(qǐng)求!')
while True:
recv_data = conversation.recv(1024)
if recv_data.decode('utf-8') == '1':
with open('./okok.jpg', 'rb') as f:
content = f.read()
conversation.send(content)
print('客戶端', recv_data.decode('utf-8'))
elif recv_data.decode('utf-8') == '2':
with open('./1234.json', 'r', encoding='utf-8') as f1:
json1 = f1.read()
print(json1)
conversation.send(json1.encode('utf-8'))
print('客戶端','2')
elif recv_data.decode('utf-8') == '3':
conversation.send('拜拜'.encode('utf-8'))
break
(客戶端)
import socket
import json
def get_picture():
data = bytes()
while True:
re_data = client.recv(1024)
data += re_data
with open('./圖片.jpg', 'bw') as f:
f.write(data)
def json1_get():
re_data = client.recv(1024)
json1 = re_data.decode('utf-8')
print(json1)
with open('./接受.json', 'w') as f:
json.dump(json1, f)
print('2(1)')
client = socket.socket()
client.connect(('10.7.187.72', 8100))
while True:
message = input('客戶端:')
client.send(message.encode('utf-8'))
data = bytes()
# while True:
# print('2')
if message == '1':
print('接受圖片!')
get_picture()
if message == '2':
print('接受json文件')
json1_get()
if message == '3':
re_data = client.recv(1024)
print('服務(wù)器:', re_data.decode('utf-8'))