我正试图用Python制作一个环境光系统。我已经成功使用pyscreenshot正确保存了屏幕截图,但是我不知道如何使它截取我的第二个显示器的屏幕(如果这是可能的话)。
是否有一种方法可以使用pyscreenshot(或其他工具)在Python中截取我的第二个显示器的屏幕?我正在使用OSX Yosemite操作系统,如果有任何不同,请提供帮助。
我正试图用Python制作一个环境光系统。我已经成功使用pyscreenshot正确保存了屏幕截图,但是我不知道如何使它截取我的第二个显示器的屏幕(如果这是可能的话)。
是否有一种方法可以使用pyscreenshot(或其他工具)在Python中截取我的第二个显示器的屏幕?我正在使用OSX Yosemite操作系统,如果有任何不同,请提供帮助。
使用内置的screencapture
命令并传递2个文件名。我相信它存在于/usr/sbin/screencapture
中,因此该命令将如下所示:
/usr/sbin/screencapture screen1.png screen2.png
我假设您知道如何使用subprocess
模块来调用它,类似于以下方式:
from subprocess import call
call(["/usr/sbin/screencapture", "screen1.png", "screen2.png"])
Mark Setchell's answer 是正确的。此外,这不能直接使用 pyscreenshot
完成。如果您查看 源代码,您会注意到在 Mac OSX 上,他们确实使用了 screencapture
实用程序,但只传递一个文件作为参数。文档(man screencapture
)说,您必须传入与屏幕数量相同的文件:
files - 保存屏幕截图的位置,每个屏幕一个文件