0

这是代码

from PIL import ImageGrab
scrgrb = ImageGrab.grabclipboard()
scrgrbnum = 0

def saveimg():
    scrgrb.save("screengrab.jpeg + str(scrgrbnum + 1)", "JPEG")
    scrgrbnum = scrgrbnum + 1

saveimg()

我得到这个错误

Traceback (most recent call last):   File
 "C:/Python27/Programs/screengrab", line 10, in <module>
     saveimg()   File "C:/Python27/Programs/screengrab", line 7, in saveimg
     scrgrb.save("screengrab.jpeg + str(scrgrbnum + 1)", "JPEG") AttributeError: 'NoneType' object has no attribute 'save'

为什么我不能保存截屏对象?

4

2 回答 2

1

尝试

 import win32api, win32con, ImageGrab
 win32api.keybd_event(win32con.VK_SNAPSHOT, 1)
 im = ImageGrab.grabclipboard()
 im.save("screenshot.jpg", "JPEG")

我认为这里的关键也是导入winapi。

资源

于 2013-05-22T07:01:12.367 回答
1

好的,我显然找到了答案

scrgrb = ImageGrab.grabclipboard()

实际上应该是

scrgrb = ImageGrab.grab()

我在没有 PIL 的 Python windows 7 screenshot的最佳答案中找到了这个

PIL 网站上的文档没有显示此更改-.-

于 2013-05-22T07:01:14.653 回答