美文网首页
day18 网络编程作业

day18 网络编程作业

作者: 遇见那天的雨真大 | 来源:发表于2018-11-28 17:09 被阅读0次
  1. 客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊
#服务器端:
import socket
serve = socket.socket()
serve.bind(("10.7.187.128",9092))
serve.listen(1024)
print("开始监听")
while True:
    conversation,addr = serve.accept()
    while True:
        data = conversation.recv(1024)
        print("客户端:",data.decode("utf-8"))
        if data.decode("utf-8") == "拜拜":
            conversation.send("拜拜".encode(encoding="utf-8"))
            print("下一会话者接听")
            break
        message = input("输入回话内容:")
        conversation.send(message.encode(encoding="utf-8"))
        if message == "拜拜":
            print("下一会话者接听")
            break
    conversation.close()

#客户端:
import socket
client = socket.socket()
client.connect(("10.7.187.128",9092))
while True:
    message = input("输入内容:")
    client.send(message.encode(encoding="utf-8"))
    if message == "拜拜":
        print("断开会话连接")
        break
    data = client.recv(1024)
    print("服务器:",data.decode("utf-8"))
    if data.decode("utf-8") == "拜拜":
        client.send("拜拜".encode(encoding="utf-8"))
        break
client.close()

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

服务器:
import socket
serve = socket.socket()
serve.bind(("10.7.187.128",9096))
serve.listen(1024)
print("开始监听")
while True:
    conversation,addr = serve.accept()
    message = "请输入编号1:获取图片;2:获取json文件;3:拜拜"
    conversation.send(message.encode(encoding="utf-8"))
    data = conversation.recv(1024)
    print("客户端:", data.decode("utf-8"))
    while True:
        data = conversation.recv(1024)
        print("客户端:",data.decode("utf-8"))
        if data.decode("utf-8") =="1":
            with open("-4d29fda630106db2.jpg","rb") as f:
                content = f.read()
                conversation.send(content)
        elif data.decode("utf-8") == "2":
            with open("home.json","rb") as f:
                content = f.read()
                conversation.send(content)
        elif data.decode("utf-8") == "3":
            conversation.send("拜拜".encode(encoding="utf-8"))
        else:
            message = "请输入编号1:获取图片;2:获取json文件;3:拜拜"
            conversation.send(message.encode(encoding="utf-8"))
    conversation.close()

客户端:
import socket
client = socket.socket()
client.connect(("10.7.187.128",9096))
message = "我要请求"
client.send(message.encode(encoding="utf-8"))
while True:
    re_data = client.recv(1024)
    print("服务器:",re_data.decode("utf-8"))
    message = input("输入内容:")
    client.send(message.encode(encoding="utf-8"))
    data1 = bytes()
    if message == "1":
        while True:
            data = client.recv(1024)
            data1 += data
            if not data:
                break
        print("数据接收完了")
        with open("回复1图片.jpg","wb") as f:
            f.write(data1)
    elif message == "2":
        while True:
            data = client.recv(1024)
            data1 += data
            if not data:
                break
        print("数据接收完了")
        with open("new_home.json","w",encoding="utf-8") as f:
            f.write(data1)
    elif message == "3":
        break
    else:
        print("输入有误,请重新请求")
        break

相关文章

  • day18 网络编程作业

    客户端和服务器聊天,可以一直聊天,直到一方发送’拜拜’。然后就可以和下一个人一直聊 2.客户端给服务器发送请求,请...

  • 3/24day18_网络编程_ TCP

    day18 复习 今日内容 网络编程概念(网络通信协议, IP地址, 端口号) TCP 网络编程 综合案例(文件上...

  • day18 网络编程

    socket编程 socket又叫套接字,指的就是实现通信过程的两个端。等待请求的一端叫服务端套接字,发送请求的一...

  • Day18 网络编程

    一.套接字Server 1.什么是socket编程 socket又叫套接字, 指的是实现通信的两个端; 这两个端又...

  • DAY52

    网络编程作业终于搞定了@_@

  • 网络编程作业

    编写一个能够持续聊天的服务器和客户端,当客户端发送“拜拜”的时候,断开服务器和客户端的连接,发送一个网址,能够下载...

  • 网络编程作业

    1.### 写一个两个人的聊天系统,可以实现双向聊天功能。2.###如果发送的是普通的文字就直接打印,如果发送的文...

  • 网络编程作业

    写一个两个人的聊天系统,可以实现双向聊天功能。如果发送的是普通的文字就直接打印,如果发送的文字是’拜拜’就关闭连接...

  • day18 总结 - 网络编程

    01.recode 1.正则符号 a.匹配字符.\w\s\d\W\S\D[字符集] \ [^字符集] b.边界检测...

  • s9python网络编程

    python之路——网络编程计算机网络ftp作业 网络编程 mac地址 arp协议:通过ip地址找mac地址 ip...

网友评论

      本文标题:day18 网络编程作业

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