用python从USB键盘读取数据时超时

用python从USB键盘读取数据时超时,python,keyboard,raspberry-pi,Python,Keyboard,Raspberry Pi,通过SSH启动的Python脚本如何从连接的USB键盘读取一行代码? 它应该在超时的情况下执行此操作 我有一个读卡器作为键盘,当检测到一张卡时,它以单行的形式发送卡ID。 在shell中使用cat/dev/tty0工作得很好,但我正在寻找一种在Python脚本中实现这一点的方法。数据很可能是作为HID协议USB设备出现的。您可以使用sourceforge的PYUSB模块访问原始数据,然后对其进行解释 import usb.core import usb.util dev = usb.core.

通过SSH启动的Python脚本如何从连接的USB键盘读取一行代码? 它应该在超时的情况下执行此操作

我有一个读卡器作为键盘,当检测到一张卡时,它以单行的形式发送卡ID。
在shell中使用cat/dev/tty0工作得很好,但我正在寻找一种在Python脚本中实现这一点的方法。

数据很可能是作为HID协议USB设备出现的。您可以使用sourceforge的PYUSB模块访问原始数据,然后对其进行解释

import usb.core
import usb.util

dev = usb.core.find(idVendor=0x0abc, idProduct=0x0123)
if dev is None: raise ValueError("Device not found")
dev.set_configuration()
endpoint = device[0][(0,0)][0]
for attempts in xrange(10):
    try:
        data = device.read(endpoint.bEndpointAddress, endpoint.wMaxPacketSize)
    except:
        data = None
if data is None: raise RuntimeError("no data found")
print 'got data', data
您需要访问该设备的权限。它将在超时时引发异常