首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用region加速pyautogui screenshot()

使用region加速pyautogui screenshot()
EN

Stack Overflow用户
提问于 2018-01-08 12:24:31
回答 1查看 7K关注 0票数 9

我正在尝试提高pyautogui的截图功能,因为我只需要屏幕的一小部分。region变量被认为是解决这个问题的方法。pyautogui.screenshot(region=(0,0,400,300))。然而,在做了一些测试后,我发现无论区域大小,拍摄屏幕截图都需要相同的时间(~250ms)。

此外,在将屏幕截图保存到文件pyautogui.screenshot('dummy.png', region=(0,0,400,300))时,区域变量似乎并不重要,而且整个屏幕都会被保存。有什么办法解释为什么它不能正常工作吗?

在OS X上运行此程序

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-08 23:55:57

在macOS上,PyAutoGUI只调用screencapture实用程序。所以它是很慢的。你可以尝试一下MSS,它会很快,而且不需要其他工具/模块。这是一个您可以尝试的示例(从documentation复制):

代码语言:javascript
复制
import mss
import mss.tools


with mss.mss() as sct:
    # The screen part to capture
    region = {'top': 0, 'left': 0, 'width': 400, 'height': 300}

    # Grab the data
    img = sct.grab(region)

    # Save to the picture file
    mss.tools.to_png(img.rgb, img.size, output='dummy.png')
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48144210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档