day18作业

  1. 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊
服务器端:
import socket
class Server:
    def __init__(self,por,ip='10.7.187.112'):
        self.por=por
        self.ip = ip
    def method(self):
        server = socket.socket()
        server.bind((self.ip,self.por))
        server.listen(1024)
        while True:
            convsation, addr = server.accept()
            while True:
                data = convsation.recv(1024)
                new_data = str(data, 'utf-8')
                print('来自客户端的消息:', new_data)
                if new_data == '拜拜':
                    return
                else:
                    message = input('服务器端:')
                    convsation.send(message.encode('utf-8'))
                    if message == '拜拜':
                        return

num=8093
while True:
    srever=Server(num).method()
    num+=1

客户端
import socket
class Client:
    def __init__(self,por,ip='10.7.187.112'):
        self.por = por
        self.ip = ip
    def method(self):
        client = socket.socket()
        client.connect((self.ip, self.por))
        while True:
            data = input('客户端:')
            client.send(data.encode('utf-8'))
            if data == '拜拜':
                return
            else:
                message = client.recv(1024)
                print('来自服务器端的消息:', message.decode('utf-8'))
                if str(message) == '拜拜':
                    return
num=8093
while True:
    client=Client(num).method()
    num+=1

2.客户端给服务器发送请求,请求成功后,客户端给服务发送‘1’,服务器就给客户端发送一张图片;
客户端给服务发送‘2’,服务器就给客户端返回一个json文件中的内容;客户端给服务发送‘3’,
服务器返回’拜拜’,然后断开连接

服务器
import json
import socket
server=socket.socket()
server.bind(('10.7.187.112',8082))
server.listen(1024)
while True:
    convasition,adrs=server.accept()
    data=convasition.recv(1024)
    new_data=str(data,'utf-8')
    if new_data=='1':
        with open('black.jpg','br') as f:
            pic=f.read()
        convasition.send(pic)
    elif new_data=='2':
        with open('js.json','r',encoding='utf-8') as f:
            file=json.load(f)
        convasition.send(file)
    elif new_data=='3':
        convasition.send('拜拜'.encode('utf-8'))
    convasition.close()

客户端
import json
import socket
client=socket.socket()
client.connect()
data=input('请输入1-3:')
client.send(data.encode('utf-8'))
by=bytes()
while True:
    message=client.recv(1024)
    by+=message
    if not message:
        break
print('数据接收完毕')
if data=='1':
    with open('图片.jpg','bw') as f:
        f.write(message)
elif data=='2':
    with open('json文件.json','w',encoding='utf-8') as f:
        json.dump(message, f)
elif data=='3':
    print(message.decode('utf-8'))
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 客户端: 你好服务器:拜拜客户...
    Gary134阅读 2,548评论 0 0
  • 作业: 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊服务器: 客户端: 2....
    2333_11f6阅读 1,547评论 0 0
  • 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送请求,请...
    杨海py阅读 2,833评论 0 0
  • 作业: 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送...
    2ez4ddf阅读 1,300评论 0 0
  • 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送请求,请...
    Oot_zhl阅读 1,586评论 0 0