mss sct.grab不会让我选择要使用哪个监视器

2024-04-28 20:56:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个显示器连接到我的电脑,两个显示器同时处于活动状态。监视器没有镜像-每个监视器显示不同的内容。在

我需要能够在代码中选择这两个监视器中的哪一个sct.抓斗. 在

我已经看到并测试了这个代码:sct_img=sct.抓斗(sct.监视器[1] ) 它工作了-我可以把“1”改为“2”,它确实会截图另一个显示器-所有的。但是,我不知道怎么进去sct.抓斗我希望使用的监视器的参数,以及我希望抓取的屏幕区域的部分屏幕截图。看来我要么可以得到部分屏幕截图,但不能选择监视器,要么我可以选择监视器,但只能得到全屏。我需要选择监视器,还需要选择区域。我在寻找合适语法的帮助。在

我有这个代码:

sct_img = sct.grab({'top': 160, 'left': 160, 'width': 160, 'height': 135})

但我想找个地方告诉你sct.抓斗从我的两个监视器中的哪一个获取此信息:例如,字典中指定要使用哪个监视器的参数之类的东西比较好:

^{pr2}$

任何帮助都会很感激的。在


Tags: 代码区域内容img参数镜像屏幕top
1条回答
网友
1楼 · 发布于 2024-04-28 20:56:52

在MSS中,目前还没有自动的方法来做到这一点。最好的办法是使用存储在sct.monitors中的值来计算坐标。在

比如:

mon2 = sct.monitors[2]
box = {
    'top': mon2['top'] + 160,
    'left': mon2['left'] + 160,
    'width': 160,
    'height': 135,
}
sct.grab(box)

相关问题 更多 >