Python 3.x 如何查找USB序列号
我是Python的新手,正在寻找确定闪存(USB内存)序列号的方法 我正在使用python 3.6.5,并且已经使用Python 3.x 如何查找USB序列号,python-3.x,pyserial,libusb,pyusb,libusb-1.0,Python 3.x,Pyserial,Libusb,Pyusb,Libusb 1.0,我是Python的新手,正在寻找确定闪存(USB内存)序列号的方法 我正在使用python 3.6.5,并且已经使用infi,pyserial,libusb,libusb1,pyusb进行了尝试 当然有很多样本和代码,但它们在我的笔记本电脑上不起作用 它有Windows 10,所有USB端口都正常工作。 我还通过USBDeview检查序列号 样本1: 样本2: 这两种方法都找不到设备,但我希望我的设备能够被识别 import usb.core import usb.util import sys
infi
,pyserial
,libusb
,libusb1
,pyusb
进行了尝试
当然有很多样本和代码,但它们在我的笔记本电脑上不起作用
它有Windows 10,所有USB端口都正常工作。
我还通过USBDeview检查序列号
样本1:
样本2:
这两种方法都找不到设备,但我希望我的设备能够被识别
import usb.core
import usb.util
import sys
class find_class(object):
def __init__(self, class_):
self._class = class_
def __call__(self, device):
# first, let's check the device
if device.bDeviceClass == self._class:
return True
# ok, transverse all devices to find an
# interface that matches our class
for cfg in device:
# find_descriptor: what's it?
intf = usb.util.find_descriptor(
cfg,
bInterfaceClass=self._class
)
if intf is not None:
return True
return False
all = usb.core.find(find_all=1, custom_match=find_class(8))
print (all)
import usb
##dev = usb.core.find(iSerialNumber=AA4PKOGO5MOTFU6I)
##print(dev)
##print( usb.util.get_string( dev, dev.iSerialNumber ) )
dev2 = usb.core.find(idVendor=0x05dc, idProduct=0xa817)
if dev2 is None:
print("Error")
raise ValueError('Device not found')
else:
print("No error")
print(dev2)
print( usb.util.get_string( dev2, dev2.iSerialNumber ) )
usb.util.get_string(dev2,256,iSerialNumber)