相关疑难解决方法(0)

在Python中查询连接的USB设备信息的简单方法?

我们如何在Python中查询连接的USB设备信息?我想获得UID设备名称(例如:SonyEricsson W660),设备路径(例如:/ dev/ttyACM0)

还有什么是上述信息中最好的参数,用于识别设备何时再次连接?(UID?)

我正在研究Ubuntu 11.04.

ATM我有这个代码(使用pyUSB)

busses = usb.busses()
for bus in busses:
  devices = bus.devices
  for dev in devices:
    print repr(dev)
    print "Device:", dev.filename
    print "  idVendor: %d (0x%04x)" % (dev.idVendor, dev.idVendor)
    print "  idProduct: %d (0x%04x)" % (dev.idProduct, dev.idProduct)
    print "Manufacturer:", dev.iManufacturer
    print "Serial:", dev.iSerialNumber
    print "Product:", dev.iProduct
Run Code Online (Sandbox Code Playgroud)

问题是我没有得到所需的输出,会粘贴一个例子:

<usb.legacy.Device object at 0x1653990>
Device: 
  idVendor: 4046 (0x0fce)
  idProduct: 53411 (0xd0a3)
Manufacturer: 1
Serial: 3
Product: 2
Run Code Online (Sandbox Code Playgroud)

首先我没有文件名,这对我来说最重要.我假设它是/ dev/ttyACM0等部分.其次,我猜每个USB设备都有一些UID,或者我应该同时使用Vendor或Product id?

编辑:显然我有一些设置问题,我想我使用错误的USB库.(使用libusb0.1)ATM.这就是我将Device(dev.filename)字符串设为空的原因.如果有人可以请告诉他在什么操作系统上他正在使用什么USB库以及我认为它将解决我的问题的哪个版本的PyUSB.

python usb libusb

27
推荐指数
3
解决办法
11万
查看次数

标签 统计

libusb ×1

python ×1

usb ×1