0
我想從服務器發送圖像到客戶端,然後讓客戶端用show()顯示它,但我有一些問題。 這是發送圖片的服務器代碼:通過套接字發送圖像並顯示它
im = ImageGrab.grab()
if not os.path.exists(r'C:\screens'):
os.makedirs(r'C:\screens')
im.save(r'C:\screens\screen.jpg')
data = open(r'C:\screens\screen.jpg', 'r')
data = data.read()
client_socket.send(str(data))
現在,很明顯我無法通過套接字發送一個文件,所以我必須把它作爲一個字符串,但後來,我不知道如何在客戶端使用show(),因爲你不能在一個字符串上使用show(),我不知道如何解決這個問題。 正如你可以看到我幾乎是一個Python初學者,所以如果解決方案簡單明瞭,我很抱歉。 我會感謝任何幫助,謝謝!
他有蟒蛇,2.7標籤,所以他很可能使用Python 2 – tambre
即時通訊使用Python 2.7,現在我把它canged爲「RB」,它似乎更好地工作,但關於Image.frombytes - 它似乎它需要3個參數 - (模式,大小和解壓的像素數據),我不知道我怎麼能知道這三個。 (即使不知道最後一個是什麼意思)。我怎麼知道這些論點? – DesTeco
好吧忘了''Image.frombytes''(它用於原始圖像數據,這不是你要處理的內容),只需保存圖像字節並使用Image.open來讀取它。爲了避免創建一個文件,你應該可以使用''io.BytesIO''來直接讀取內存中的字節緩衝區。 –