作业:
第一题:
写一个客户端和服务器的套接字:
客户端连接服务器后展示界面:
===========================
- 需要图片
- 需要文字
- 通知结束
==========================
请选择:
如果客户端选1,服务器给客户端发送一张图片,客户端保存图片到本地
如果客户端选2, 服务器输入一段文字发送给客户端, 客户端将文字保存在一个message.txt文件中
如果客户端选3,通知服务器关闭连接,并且客户端结束
服务器
import socket
server = socket.socket()
server.bind(('10.7.156.97', 8082))
server.listen(512)
while True:
conversation, addr = server.accept()
message_re = conversation.recv(1024).decode('utf-8')
if message_re == '1':
# 发送图片
print('发送图片')
with open('./files/luffy.jpeg', 'br') as f:
content = f.read()
conversation.send(content) # 发送图片信息
conversation.close()
elif message_re == '2':
message = input('>>>')
conversation.send(message.encode('utf-8'))
conversation.close()
客户端:
import socket
number = 0
page = """
===========================
1. 需要图片
2. 需要文字
3. 通知结束
==========================="""
while True:
client = socket.socket()
client.connect(('10.7.156.97', 8082))
print(page)
value = input('请选择(1-3):')
# 发送数据
client.send(value.encode('utf-8'))
# 接收服务器返回的数据
if value == '1':
data = bytes()
message_re = client.recv(1024)
while message_re:
print('接收到图片')
data += message_re
message_re = client.recv(1024)
# 关闭连接
client.close()
number += 1
with open('./new%d.jpeg'%number, 'wb') as f:
f.write(data)
elif value == '2':
message_re = client.recv(1024)
print(message_re.decode('utf-8'))
# client.close()
第二题:
请求接口:[图片上传失败...(image-675d98-1540459288316)]
https://www.apiopen.top/satinApi?type=1&page=1 获取网络数据。
将内容中所有的name和text对应的值取出,并且保存到一个json文件中,保存的格式:
[{“name”:”张三”, “text”:”哈哈,让我们一起自由的飞翔”}, {“name”:”喒你家玻璃”, “text”:”截图暂停,截到的将会是对你爱情的预言三词!”}]
网友评论