1、 写一个两个人的聊天系统,可以实现双向聊天功能。
- 写一个两个人的聊天系统,可以实现双向聊天功能。
- 如果发送的是普通的文字就直接打印,如果发送的文字是’拜拜’就关闭连接,
- 如果是一个网络地址就获取数据(保存到文本文件中),如果是图片地址就下载图片到本地
- 服务器:
import socket
if __name__ == '__main__':
server = socket.socket()
server.bind(('10.7.181.58',8778))
server.listen(50)
print('开始监听')
while True:
conversation,address = server.accept()
print(address)
while True:
massage = input('>>')
conversation.send(massage.encode())
data = conversation.recv(1024)
data_cn = data.decode(encoding='utf-8')
print(data_cn)
if data_cn == '拜拜':
conversation.close()
elif data_cn == '发链接':
# 发送一张图片
with open('./唐小鸭.png', 'rb') as f:
data = f.read()
conversation.send(data)
""" by_sawyer """
import socket
if __name__ == '__main__':
client = socket.socket()
client.connect(('10.7.181.58',8778))
while True:
massage = client.recv(1024)
data = massage.decode(encoding='utf-8')
print(data)
if data == '拜拜':
client.close()
data2 = input('>>')
client.send(data2.encode())
if data2 == '发图片':
image_data = bytes() # 创建一个空的bytes用来保存整个图片数据
while data:
image_data += data
data = client.recv(1024)
# 保存图片到本地
with open('./新小鸭.png', 'wb') as f:
f.write(image_data)