Estou tentando automatizar alguns testes no meu RaspberryPi e estou usando o pymouse do python para executar alguns cliques emulados. No meu Debian, ele funciona bem, mas quando se trata do Raspbian, ele continua falhando com esta mensagem de erro ao tentar importar o 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
Então, pesquisei e descobri que meu problema pode ser causado pelo módulo de registro ausente na minha instalação do x11. Eu já criei um /etc/X11/xorg.conf padrão e adicionei as seguintes linhas:
Section "Module"
Load "record"
EndSection
Depois de reiniciar, não encontrei nenhuma diferença. Eu acho que o módulo não está instalado até agora no Raspbian? Como posso instalá-lo?
Atualização:
Encontrei alguém que encontrou um problema semelhante no fedora e ele documentou o fato de que ele /usr/lib/xorg/modules/extensions/librecord.so
estava faltando. Este não parece ser o meu problema, pois o arquivo existe. Eu também tentei usar Xorg -configure
para criar um novo xorg.conf e reiniciei o meu Pi posteriormente. Ainda sem sorte. :-(
Aqui estão mais algumas informações que podem ser úteis:
pi@pi ~/ $ grep LoadModule /var/log/Xorg.0.log
[169058.900] (II) LoadModule: "fbturbo"
[169058.912] (II) LoadModule: "fbdev"
E:
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 [...]
Esta postagem foi migrada do RaspberryPi.stackexchange.com .
Respostas:
Você pode testar isso sem o resto do pymouse ativando o python e executando
que deve imprimir
Parece que corresponde a
(está abaixo
number of extensions:
na saída completa.)Se o último não aparecer, o servidor X não o suporta, o que é muito incomum desde que se tornou parte do servidor núcleo em julho de 2012 - o que também explica por que a tentativa de carregar o módulo não está funcionando; não existe um módulo para carregar desde cerca de quatro anos atrás.
python-xlib
em si obteverecord
suporte na versão 0.14 em 2007, então é menos provável que esteja desatualizado ...fonte
http://mirrordirector-mb.raspbian.org/raspbian/pool/main/x/xmacro/
Este é um gravador de macro. É compilado, mas suponho que funcione como diz. Ainda não testei, mas parece muito mais fácil do que fazer um programa em python que você não consegue descobrir onde ele está quebrando.
fonte