我正在尝试使用pyautogui
模块截图,但不断收到此错误
>>> image = pyautogui.screenshot() Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: module 'pyautogui' has no attribute 'screenshot'
有什么我失踪? 使用Python自动化烦人的东西的章节说,因为我在Windows上,我不应该下载除了pyautogui
本身以外的任何东西,这个工作。 任何人都知道为什么会这样呢? 提前致谢。
编辑:我使用python,所以我已经有Pillow
。
在使用“image = pyautogui.screenshot()”之前,必须先输入“import pyautogui”
在Linux上,您必须运行sudo apt-get install scrot
来使用屏幕截图功能。
它看起来像PyAutoGUI只是从PIL / Pillow借用ImageGrab,您可以通过在screeenshotUtil.py中查看pyautogui
def _screenshot_win32(imageFilename=None): im = ImageGrab.grab() if imageFilename is not None: im.save(imageFilename) return im
并进一步下降
# set the screenshot() function based on the platform running this module if sys.platform.startswith('java'): raise NotImplementedError('Jython is not yet supported by PyAutoGUI.') elif sys.platform == 'darwin': screenshot = _screenshot_osx elif sys.platform == 'win32': screenshot = _screenshot_win32 from PIL import ImageGrab else: screenshot = _screenshot_linux grab = screenshot # for compatibility with Pillow/PIL's ImageGrab module.
我和OP一样麻烦,但是在实现了上面的我之后直接使用了ImageGrab。 从注释部分吸取灵感,在安装了枕头的窗户上,OP的答案如下所示:
from PIL import ImageGrab import time time.sleep(5) box = (1106,657,1166,679) #Upper left and lower right corners ImageGrab.grab(box).save('box.png') #ImageGrab.grab().save('fullscreen.png')
from pyautogui import screenshotUtil im=screenshotUtil.screenshot() print im.getpixel((850, 850))
我努力了。 这与文件似乎有所不同。 希望这是有帮助的。