python socket发送图片_python实现客户端和服务器端传输图片
时间: 2023-07-25 12:19:42 浏览: 155
要实现客户端和服务器端传输图片,可以使用Python的socket模块。以下是一个简单的示例代码:
服务器端代码:
```
import socket
HOST = 'localhost'
PORT = 8000
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
print('Server running on port %d ...' % PORT)
while True:
conn, addr = s.accept()
print('Connected by', addr)
f = open('received_image.jpg', 'wb')
while True:
data = conn.recv(1024)
if not data: break
f.write(data)
f.close()
print('Image received!')
conn.close()
```
客户端代码:
```
import socket
HOST = 'localhost'
PORT = 8000
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
print('Connected to server on port %d ...' % PORT)
f = open('image.jpg', 'rb')
while True:
data = f.read(1024)
if not data: break
s.send(data)
f.close()
s.shutdown(socket.SHUT_WR)
print('Image sent!')
s.close()
```
其中,服务器端代码会监听指定的端口,等待客户端连接。一旦客户端连接成功,服务器端会创建一个文件,接收客户端发送的图片数据,并保存到文件中。
客户端代码会连接到指定的服务器端口,读取本地的图片文件,将数据发送给服务器端。发送完成后,客户端会关闭连接。
需要注意的是,这个示例代码并没有进行任何异常处理,实际应用中需要根据具体情况进行处理。
阅读全文