Слушайте USB-клавиатуру с помощью Python

Настройка: минималистичный Linux (OpenWRT на маршрутизаторе ASUS ), USB-клавиатуру (предположим, я знаю имя устройства, например / dev / hiddev0)

Цель: написать скрипт python (или оболочку, в данном случае я могу использовать его как прокси для python), который будет слушать это устройство и выполнить некоторые действия на основе пользовательского ввода

Для начала - вполне достаточно, чтобы отобразить введенные пользователем символы в текстовый файл с заданным именем. Я в порядке с PySerial, хотя не уверен, подходит ли он для этой задачи - при попытке открыть устройство он говорит «serial.serialutil.SerialException: не удалось настроить порт: (22, 'Invalid argument')»

UPD: ну хорошо, тривиальный ответ был "cat / dev / input / event1"

Но вывод действительно загадочный - есть ли намек на его интерпретацию (как коды символов int)?

UPD UPD : hexdump / dev / input / event1 намного лучше! он дает 6 кортежей из 9 для каждого нажатия клавиши (я полагаю, 3 для клавиши вниз, 3 для клавиши вверх) Вероятно, это было бы не , поэтому сложно его расшифровать

Но более цивилизованный способ все еще высоко ценится

http://svn.navi.cx/misc/trunk/python/evdev/evdev. py выглядит интересно ...

11
задан Guard 15 May 2011 в 21:52
поделиться