from PyQt5.QtWidgets import QApplication
from PyQt5.QtGui import *
from matplotlib import pyplot as plt
import sys
import cv2
app = QApplication(sys.argv)
screen = QApplication.primaryScreen()
img = screen.grabWindow(0).toImage()
img.save("desktopshot.jpg")
img = cv2.imread("desktopshot.jpg")
cv2.imshow('desktopshot',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# plt.imshow(img)
# plt.show()
screenshot.py
from PyQt5.QtWidgets import QApplication
from PyQt5.QtGui import *
import win32gui
import sys
import cv2
hwnd_title = dict()
def get_all_hwnd(hwnd,mouse):
if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd) and win32gui.IsWindowVisible(hwnd):
hwnd_title.update({hwnd:win32gui.GetWindowText(hwnd)})
def get_hwnd(name):
for h,t in hwnd_title.items():
if t == name:
return h
return None
def show_hwnd():
for h,t in hwnd_title.items():
if t is not "":
print(h, t)
win32gui.EnumWindows(get_all_hwnd, 0)
# hwnd = win32gui.FindWindow(None, 'C:\Windows\system32\cmd.exe')
hwnd = get_hwnd('计算器')
if hwnd is None:
hwnd = 0
app = QApplication(sys.argv)
screen = QApplication.primaryScreen()
img = screen.grabWindow(hwnd).toImage()
img.save("screenshot.jpg")
img = cv2.imread("screenshot.jpg")
cv2.imshow('screenshot',img)
cv2.waitKey(0)
cv2.destroyAllWindows()