是否存在使用其PID捕获python中正在运行的桌面应用程序的屏幕截图的任何可能方法。 该应用程序是从python程序中启动的。
我对Windows中的win32gui很熟悉,但是我不知道它在Linux中是替代方法。 Win32gui可以通过其名称查找正在运行的程序的窗口。如果无法使用PID解决方案,在Linux中有什么方法可以做到这一点。
答案 0 :(得分:0)
最后,我明白了。实际上,有一个名为Xlib(用于python的X11 API)的库,但是它的文档非常差。因此,浪费时间是不值得的。如果您使用的是Linux,则使用简单的bash命令来获取正在运行的桌面应用程序的屏幕截图。代码如下,
JMSMessage class: jms_map
JMSType: null
JMSDeliveryMode: 2
JMSDeliveryDelay: 0
JMSDeliveryTime: 0
JMSExpiration: 0
JMSPriority: 4
JMSMessageID: ID:414d51204d454d5154433120202020205ccc4b272634404a
JMSTimestamp: 1562783439854
JMSCorrelationID: null
JMSDestination: queue://- INFO IS THERE
JMSReplyTo: null
JMSRedelivered: false
JMSXAppID: WebSphere MQ Client for Java
JMSXDeliveryCount: 1
JMSXUserID: apmqstc
JMS_IBM_Character_Set: UTF-8
JMS_IBM_Encoding: 273
JMS_IBM_Format: MQSTR
JMS_IBM_MsgType: 8
JMS_IBM_PutApplType: 28
JMS_IBM_PutDate: 20190710
JMS_IBM_PutTime: 18303986
对于此安装wmctrl。如果您不知道应用程序名称的用途,
import os
os.system("wmctrl -a Application_Name")
os.system("gnome-screenshot -w -f filename.png")
它将列出所有打开的桌面应用程序。