Можно ли использовать Python Win32 API, используя следующий код внутри контейнера докера, обращаясь к хосту для получения захвата экрана.
Я думаю, может быть, установить Docker для Windows, установить образ и запустить код Python внутри, получая доступ к хосту для скриншота.
Я знаю, что вы можете привязать порты, есть ли способ привязать доступ к GUI хоста?
# code from https://github.com/Sentdex/pygta5/blob/master/grabscreen.py
import cv2
import numpy as np
import win32gui, win32ui, win32con, win32api
def grab_screen(region=None):
hwin = win32gui.GetDesktopWindow()
if region:
left,top,x2,y2 = region
width = x2 - left + 1
height = y2 - top + 1
else:
width = win32api.GetSystemMetrics(win32con.SM_CXVIRTUALSCREEN)
height = win32api.GetSystemMetrics(win32con.SM_CYVIRTUALSCREEN)
left = win32api.GetSystemMetrics(win32con.SM_XVIRTUALSCREEN)
top = win32api.GetSystemMetrics(win32con.SM_YVIRTUALSCREEN)
...more code (see link)
return cv2.cvtColor(img, cv2.COLOR_BGRA2RGB)