Я пытаюсь сделать снимок экрана, используя python, который будет работать как в Windows, так и в Linux. Я прочитал pyscreenshot
может сделать эту работу. Но у меня есть ошибка, и в документации, похоже, не указана какая-либо зависимость.
import pyscreenshot as ImageGrab
im = ImageGrab.grab()
im.show()
Трассировка:
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/procutil.py", line 15, in _wrapper
r = target(*args, **kwargs)
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/__init__.py", line 33, in _grab_simple
return backend_obj.grab(bbox)
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/plugins/wxscreen.py", line 39, in grab
im.frombytes(buffer(myWxImage.GetData()))
NameError: name 'buffer' is not defined
Traceback (most recent call last):
File "ambi.py", line 10, in <module>
im = ImageGrab.grab()
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/__init__.py", line 67, in grab
to_file=False, childprocess=childprocess, backend=backend, bbox=bbox)
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/__init__.py", line 46, in _grab
_grab_simple, imcodec.codec, to_file, backend, bbox, filename)
File "/usr/local/lib/python3.6/dist-packages/pyscreenshot/procutil.py", line 37, in run_in_childprocess
raise e
NameError: name 'buffer' is not defined
Я установил ее с sudo pip3 install pyscreenshot
Я попытался установить wxscreen
, но, похоже, пакет с таким именем не найден.
Я не хочу использовать библиотеки, имитирующие ввод с клавиатуры, поскольку скрипт будет работать в фоновом режиме во время игры. следить за статистикой. Античиты могут сработать.