python flask 实现电脑屏幕实时共享(转)

279 阅读1分钟

转自:blog.csdn.net/MAILLIBIN/a…

在A电脑上运行以下脚本后,在B电脑上通过链接 http://192.168.3.6:5000/video_feed即可看到A电脑的实时动态屏幕图像。

import pyautogui
from flask import Flask,render_template,Response
import io 

app=Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html')

def gen():
    while True:
        #截屏
        screenShotImg = pyautogui.screenshot()
        #截屏转换成图像数据
        imgByteArr = io.BytesIO()
        screenShotImg.save(imgByteArr, format='JPEG')
        imgByteArr = imgByteArr.getvalue()
        frame = imgByteArr
        #截屏图像数据分帧生成
        yield (b'--frame\r\n Content-Type: image/jpeg\r\n\r\n' + frame)
@app.route('/video_feed')
def video_feed():
    #分帧推送截屏图像数据到前端
    return Response(gen(), mimetype='multipart/x-mixed-replace; boundary=frame')

if __name__== '__main__':
    app.run(host='0.0.0.0', debug=False, threaded=True, port=5000)
    '''
    在A电脑上运行以下脚本后,
    在B电脑上通过链接“http://192.168.3.6:5000/video_feed”即可看到A电脑的实时动态屏幕图像。
    '''