[英]Retrieve list of USB items using Python
如何使用python检索通过USB插入计算机的项目? 我在这里搜索并发现了一些旧的例子,它们似乎不再工作了,因为它们已经超过 5 年了。
我想要一个示例,我可以在其中列出下图中看到的名称,这是设备管理器的屏幕截图。
下面的代码列出了所有 USB 设备,但没有数据返回图像中看到的名称,这是为什么?
import win32com.client
import pprint
wmi = win32com.client.GetObject ("winmgmts:")
for usb in wmi.InstancesOf ("Win32_USBHub"):
# print usb.DeviceID
# pprint.pprint (dir(usb))
# pprint.pprint (vars(usb))
# print usb.__dict__
print ('Device ID:', usb.DeviceID)
print ('Name:', usb.name)
print ('System Name:', usb.SystemName)
print ('Caption:', usb.Caption)
print ('Caption:', usb.Caption)
print ('ClassCode:', usb.ClassCode)
print ('CreationClassName:', usb.CreationClassName)
print ('CurrentConfigValue:', usb.CurrentConfigValue)
print ('Description:', usb.Description)
print ('PNPDeviceID:', usb.PNPDeviceID)
print ('Status:', usb.Status)
print ('\n')
我会安装pyserial
py -m pip install pyserial
并使用serial.tools.list_ports
。 您可以将其作为模块执行:
py -m serial.tools.list_ports`
或将模块及其相应的方法合并到您的代码库中:
import serial
from serial.tools import list_ports
if __name__ == "__main__":
for port in list_ports.comports():
if "USB" in port.hwid:
print(f"Name: {port.name}")
print(f"Description: {port.description}")
print(f"Location: {port.location}")
print(f"Product: {port.product}")
print(f"Manufacturer: {port.manufacturer}")
print(f"ID: {port.pid}")
更多信息可以在这里找到:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.