RaspberryPi에서 일부 테스트를 자동화하려고하는데 파이썬의 pymouse를 사용하여 에뮬레이트 된 클릭을 수행하고 있습니다. 내 데비안에서는 잘 작동하지만 Raspbian과 관련하여 pymouse를 가져올 때이 오류 메시지와 함께 계속 실패합니다.
pi@pi ~/ $ python test.py
Traceback (most recent call last):
File "test.py", line 2, in <module>
from pymouse import PyMouse
File "/usr/local/lib/python2.7/dist-packages/pymouse/__init__.py", line 95, in <module>
from unix import PyMouse, PyMouseEvent
File "/usr/local/lib/python2.7/dist-packages/pymouse/unix.py", line 53, in <module>
class PyMouseEvent(PyMouseEventMeta):
File "/usr/local/lib/python2.7/dist-packages/pymouse/unix.py", line 54, in PyMouseEvent
ctx = display2.record_create_context(
File "/usr/lib/pymodules/python2.7/Xlib/display.py", line 216, in __getattr__
raise AttributeError(attr)
AttributeError: record_create_context
그래서 몇 가지 연구를 수행하여 x11 설치에서 레코드 모듈이 누락되어 문제가 발생할 수 있음을 발견했습니다. 이미 기본 /etc/X11/xorg.conf를 만들고 다음 줄을 추가했습니다.
Section "Module"
Load "record"
EndSection
다시 시작한 후 차이점을 찾을 수 없었습니다. 모듈이 지금까지 Raspbian에 설치되어 있지 않은 것 같습니다. 어떻게 설치하나요?
업데이트 :
나는 페도라에서 비슷한 문제를 겪은 다른 사람 을 발견하고 사실이 문서화되었다는 사실을 문서화했습니다 /usr/lib/xorg/modules/extensions/librecord.so
. 파일이 존재하기 때문에 이것은 내 문제가 아닌 것 같습니다. 또한 Xorg -configure
새 xorg.conf를 만드는 데 사용 하고 나중에 Pi를 다시 시작했습니다. 아직 운이 없다. 🙁
도움이 될만한 추가 정보는 다음과 같습니다.
pi@pi ~/ $ grep LoadModule /var/log/Xorg.0.log
[169058.900] (II) LoadModule: "fbturbo"
[169058.912] (II) LoadModule: "fbdev"
과:
pi@pi ~/ $ xdpyinfo name of display: :0.0 version number: 11.0 vendor string: AT&T Laboratories Cambridge vendor release number: 3332 [...] number of extensions: 7
BIG-REQUESTS
MIT-SHM
MIT-SUNDRY-NONSTANDARD
SHAPE
SYNC
XC-MISC
XTEST [...]
이 게시물은 RaspberryPi.stackexchange.com 에서 마이그레이션되었습니다 .
답변
파이썬을 실행하고 실행하여 나머지 pymouse없이 이것을 테스트 할 수 있습니다
from Xlib.display import Display
display = Display()
display.record_create_context
어느 것이 인쇄되어야 하는가
<bound method Display.create_context of <Xlib.display.Display instance at ...>>
그에 해당하는 것 같습니다
$ xdpyinfo | grep -i record
RECORD
( number of extensions:
완전히 출력됩니다.)
후자가 나타나지 않으면 X 서버가 X 서버를 지원하지 않습니다. 이는 2012 년 7 월에 핵심 서버의 일부가 된 이후로 매우 드문 일 입니다. 또한 모듈로드 시도가 작동하지 않는 이유도 설명합니다. 약 4 년 전부터로드 할 모듈이 없었습니다.
python-xlib
record
2007 년에는 0.14 버전에서 자체 지원을 받았기 때문에 구식이 될 가능성이 훨씬 적습니다.
답변
http://mirrordirector-mb.raspbian.org/raspbian/pool/main/x/xmacro/
이것은 매크로 레코더입니다. 컴파일되었지만 말한대로 작동한다고 가정합니다. 나는 그것을 테스트하지는 않았지만 파이썬 프로그램으로 해킹하는 것보다 훨씬 쉬워 보인다.