2015-07-04 2 views
1

Я в настоящее время написал сценарий питона, который принимает входной сигнал от видеокамеры пользователя с помощью следующего кода:Как записать экран в python для mac?

import numpy as np 
import cv2 
import cv 
import datetime 
import math 
import time 
import os 
cap = cv2.VideoCapture(0) 
def init(): 
    ret, imgBase = cap.read() 
    print(type(imgBase))` 

Приведенный выше код является полностью функциональным и это делает получить ввод от пользователя. Однако, вместо того, чтобы вводить данные из веб-камеры пользователя, я хочу получить вход с экрана пользователя. Мне нужно что-то вроде cap = cv2.ScreenCapture(0) Я понимаю, что это не работает, но мне нужно что-то подобное, чтобы я мог читать и захватывать изображение с экрана пользователя. По сути, мне нужно получить снимок экрана монитора/пользователя.

ответ

1

работает только на Mac:

import os 
os.system('screencapture out.jpg') 

Вы можете прочитать скриншот в память с помощью функции питона по умолчанию. Для получения дополнительной информации типа человек screencapture в терминале или проверьте эту ссылку: https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/screencapture.1.html.

+0

Я попробовал его и он не работает 'импорт NumPy как нп импорт CV2 импорта сорт импорта дата и время импорта математика импорта время импорта ОС колпачка = os.system («ScreenCapture out.jpg») #Changed this part def init(): ret, imgBase = cap.read() print (type (imgBase)) ' –

+0

После выполнения команды вам нужно будет прочитать файл из вашей файловой системы:' image = open ('out.jpg', 'rb') ' – Pete

Смежные вопросы