Мой код для извлечения значения из USB-устройства в Python выглядит следующим образом:usb.core.USBError: [Errno 19] Нет такого устройства (оно не может быть отключен)
import usb.core
import usb.util
VENDOR_ID = 0x0922
PRODUCT_ID = 0x8005
# find the USB device
device = usb.core.find(idVendor=VENDOR_ID,
idProduct=PRODUCT_ID)
# use the first/default configuration
device.set_configuration()
# first endpoint
endpoint = device[0][(0,0)][0]
# read a data packet
attempts = 10
data = None
while data is None and attempts > 0:
try:
data = device.read(endpoint.bEndpointAddress,
endpoint.wMaxPacketSize)
except usb.core.USBError as e:
data = None
if e.args == ('Operation timed out',):
attempts -= 1
continue
print data
Когда я запускаю это это сообщение об ошибке:
File "/Library/Python/2.7/site-packages/usb/backend/libusb1.py", line 552, in _check
raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno 19] No such device (it may have been disconnected)
Почему это происходит и как я могу это исправить? Благодаря!
можете ли вы опубликовать весь трасчет, чтобы узнать, где происходит ошибка? – WoJ
На всякий случай, убедитесь, что вы добавили базовый код ошибки управления: '# было найдено? если устройство отсутствует: raise ValueError ('Устройство не найдено') ' – Layo
http://ubuntuforums.org/archive/index.php/t-2044904.html проверить это может быть полезно Ваш код не показывал любые ошибки для моего внешнего жесткого диска, после того, как я добавил несколько разрешений @ /etc/udev/rules.d/99-garmin.rules. Но у меня есть ошибка для моего ключа. – Ajay