我使用
ImageGrab.grab()
来截取屏幕截图。
我有一个功能,可以以一定的延迟无限地截取屏幕截图。然而,大约2小时左右后,调用该函数时出现错误OSError: screen grab failed
。
我在这里发现了类似的问题:https://github.com/python-pillow/Pillow/issues/1601, 但是,我不是在远程服务器上截屏,而是在我自己的电脑上截屏。
什么原因导致这种情况发生以及可以采取什么措施?
操作系统:Windows 10
示例代码:
from PIL import ImageGrab
from threading import Thread
import time
DELAY = 1.0
def shot(bbox):
im = ImageGrab.grab(bbox)
return im.load()
def screen_scan():
while True:
shot(None)
time.sleep(DELAY)
if __name__ == '__main__':
Thread(target=screen_scan, daemon=True).start()
while True:
input()
兄弟,你解决这个问题了吗?