如何使用python在Linux中拍摄应用程序窗口的屏幕截图

时间:2019-07-17 18:17:39

标签: python

我正在使用python3,我想对虚拟机屏幕进行屏幕截图。 我需要在虚拟机环境中打开一些窗口,之后我必须使用opencv对屏幕截图进行分析,但是我不知道如何获取窗口位置,宽度和高度。我必须在linux操作系统中执行此操作。有没有办法确定在PC上打开的任何应用程序窗口的位置?

1 个答案:

答案 0 :(得分:0)

您最好的选择是使用wxPython。这是一个如何使用它来截取屏幕截图的示例:

import wx

wx.App()  # Need to create an App instance before doing anything
screen = wx.ScreenDC()
size = screen.GetSize()
bmp = wx.EmptyBitmap(size[0], size[1])
mem = wx.MemoryDC(bmp)
mem.Blit(0, 0, size[0], size[1], screen, 0, 0)
del mem  # Release bitmap
bmp.SaveFile('screenshot.png', wx.BITMAP_TYPE_PNG)