截屏并在python中通过套接字发送

时间:2018-11-18 14:29:11

标签: python sockets screenshot

我想从服务器获取屏幕截图,然后通过套接字将其发送给客户端,
在客户端收到并显示(作为视频)

我试试这个:

在服务器中

from PIL import ImageGrab
import base64
from io import StringIO,BytesIO
def sendVideo(MySocket):
    print("in sendVideo")
    buffer = BytesIO()
    while True:
        im = ImageGrab.grab()
        im.save(buffer, format='PNG')
        b64_str = base64.b64encode(buffer.getvalue())
        MySocket.send(b64_str)  

在客户端

import ...
def recievVideo(MySocket):
    while True:
        data = MySocket.recv(2048)
        imgdata = base64.b64decode(data)
        image = Image.open(BytesIO(imgdata))
        cv2.imshow("Picture",cv2.cvtColor(numpy.array(image), cv2.COLOR_BGR2RGB))
        kk = cv2.waitKey(1) and 0xFF  

但是不能正常工作(这意味着它仅发送图像(第一帧)并且仅显示相同的图像)

我使用python v3.7

谢谢

0 个答案:

没有答案