如何在Python中获取USB设备
在Python中,我们可以使用第三方库pyusb
来获取USB设备的信息。pyusb
是一个Python模块,用于与USB设备进行通信和控制。通过使用pyusb
,我们可以列出系统中连接的USB设备、获取USB设备的描述信息、打开和关闭USB设备等操作。
安装pyusb
首先,我们需要安装pyusb
库。可以使用pip命令来安装:
pip install pyusb
列出系统中的USB设备
接下来,我们可以使用pyusb
来列出系统中连接的USB设备。下面是一个简单的示例代码:
import usb.core
import usb.util
# 列出系统中的USB设备
dev = usb.core.find(find_all=True)
for device in dev:
print("Vendor ID: 0x{:04x}, Product ID: 0x{:04x}".format(device.idVendor, device.idProduct))
上面的代码中,我们使用usb.core.find()
方法来列出系统中的所有USB设备,并打印出每个设备的厂商ID和产品ID。
获取USB设备的描述信息
除了列出USB设备的ID外,我们还可以获取USB设备的描述信息,比如设备的制造商、产品名称等。下面是一个示例代码:
import usb.core
import usb.util
# 查找指定Vendor ID和Product ID的USB设备
dev = usb.core.find(idVendor=0x045e, idProduct=0x0772)
if dev is not None:
# 获取USB设备的描述信息
manufacturer = usb.util.get_string(dev, dev.iManufacturer)
product = usb.util.get_string(dev, dev.iProduct)
print("Manufacturer: {}".format(manufacturer))
print("Product: {}".format(product))
else:
print("USB设备未找到.")
在上面的代码中,我们使用指定的Vendor ID和Product ID来查找USB设备,并获取设备的制造商和产品名称。
打开和关闭USB设备
最后,我们还可以使用pyusb
来打开和关闭USB设备。下面是一个示例代码:
import usb.core
import usb.util
# 查找指定Vendor ID和Product ID的USB设备
dev = usb.core.find(idVendor=0x045e, idProduct=0x0772)
if dev is not None:
# 打开USB设备
dev.set_configuration()
# 在这里可以对USB设备进行读写操作
# 关闭USB设备
usb.util.dispose_resources(dev)
else:
print("USB设备未找到.")
在上面的代码中,我们首先通过指定的Vendor ID和Product ID查找USB设备,然后使用set_configuration()
方法打开设备,在需要时进行读写操作,最后使用dispose_resources()
方法关闭设备。
总的来说,通过使用pyusb
库,我们可以很方便地获取USB设备的信息,并与USB设备进行交互。希望以上内容对你有所帮助!
引用形式的描述信息
本文参考了官方文档和实际项目经验,对Python中获取USB设备的方法进行了整理和解释。
pie
title USB设备厂商占比
"Vendor A": 30
"Vendor B": 20
"Vendor C": 50
结语
在本文中,我们介绍了如何在Python中获取USB设备的方法,包括列出系统中的USB设备、获取USB设备的描述信息、以及打开和关闭USB设备。通过使用pyusb
库,我们可以方便地与USB设备进行交互,并获取所需的信息。希望本文对你有所帮助,谢谢阅读!