gpt4 book ai didi

python - 如何将JPG文件从服务器发送到客户端

转载 作者:行者123 更新时间:2023-12-03 12:02:58 26 4
gpt4 key购买 nike

我需要将JPG文件从服务器发送到客户端。我该怎么做?

Server Code:

from PIL import ImageGrab
import socket

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((IP, PORT))
server_socket.listen(1)
client_socket, address = server_socket.accept()
image = ImageGrab.grab()
image.save(r'screen.jpg')
# client_socket.send( ? )

最佳答案

当我尝试发送大量数据时,它无法与client_socket.send(data)一起使用,因此我找到了一种解决方案:

BYTES_AMOUNT = 1024
def send_all(client_socket, data):
while True:
packet = bytes(data[:BYTES_AMOUNT])
if not packet:
break
client_socket.send(packet)
client_socket.recv(4)
data = data[BYTES_AMOUNT:]


def receive_all(client_socket):
data = bytes('')
receiving = True
while receiving:
try:
packet = client_socket.recv(BYTES_AMOUNT)
client_socket.send('SEND')
except Exception as error_msg:
receiving = False
packet = bytes('')
print error_msg
data += bytes(packet)
if len(packet) < BYTES_AMOUNT:
receiving = False
return bytes(data)
然后:

Send:

with open('screen.jpg', 'rb') as handle:
send_all(client_socket, handle.read())

Receive:

received_data = receive_all(client_socket)
with open('received_file.jpg', 'wb') as handle:
handle.write(received_data)








关于python - 如何将JPG文件从服务器发送到客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59791582/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com