美文网首页
day19作业

day19作业

作者: 我才是鳄鱼宝宝 | 来源:发表于2018-10-26 12:21 被阅读0次

    import socket
    server = socket.socket()
    server.bind(('10.7.156.60', 7080))
    server.listen(512)
    print('开始监听')

    while True:
    #接收客户端请求
    conversation, addr = server.accept()
    print('===')
    print(addr)
    print('++++')

    while True:
        #接收消息
        message_re = conversation.recv(1024).decode('utf-8')
        print(message_re)
        print('\\\\\\\\')
        #服务器给客户端发送消息
        #1.服务器给客户端发送一张图片,客户端保存图片到本地
        if message_re == '1':
            print('\\\\')
            with open('./files/担担面.jpg', 'br') as f:
                while True:
                    content = f.read()
                    if not content:
                        print('发送完毕')
                        conversation.send('发送完毕'.encode(encoding='utf-8'))
                        break
                    conversation.send(content)
                    # 关闭连接
                    # conversation.close()
    
        #2.服务器输入一段文字发送给客户端, 客户端将文字保存在一个message.txt文件中
        elif message_re == '2':
            content1 = input('请输入传输文字:')
            conversation.send(content1.encode(encoding='utf-8'))
            # conversation.close()
    
        #3.通知服务器关闭连接,并且客户端结束
        elif message_re == '3':
            conversation.close()
            print('断开连接')
            break
    

    client:

    import socket

    client = socket.socket()
    client.connect(('10.7.156.60', 7080))

    with open('./files/show_page.txt', 'r', encoding='utf-8') as f:
    page = f.read()

    while True:

    print(page)
    # 给服务器发送消息
    message = input('请输入你想要的序号:')
    client.send(message.encode(encoding='utf-8'))
    
    if message == '1':
        data = bytes()
        re_data = client.recv(1024)
        while re_data:
            data += re_data
            re_data = client.recv(1024)
            if re_data == '发送完毕'.encode(encoding='utf-8'):
                print('接收成功')
                break
    
        with open('./files/new_pic.jpg', 'bw') as f:
            f.write(data)
        print('接收到图片啦')
        continue
    
    elif message == '2':
        messages = client.recv(1024).decode('utf-8')
        with open('./files/message.txt', 'w', encoding='utf-8') as f:
            f.write(messages)
        print('接收到文档啦')
        continue
    
    elif message == '3':
        print('中断连接')
        break
    
    else:
        print('请输入1~3')
        continue
    

    相关文章

      网友评论

          本文标题:day19作业

          本文链接:https://www.haomeiwen.com/subject/espktqtx.html