使用Python在Windows下获取USB PID&VID的方法

 更新时间:2019年07月02日 21:17:50   作者:jgw2008  
今天小编就为大家分享一篇使用Python在Windows下获取USB PID&VID的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在Linux系统下获取USB PID&VID是件十分容易的事情,只需要"lsusb"命令就可以了。

不过,对于Windows,就没有那么容易了。

之前,有尝试过通过注册表来获得目前连接device的USB PID&VID,不过注册表里存放的是之前有插入这台Windows系统的USB设备的历史记录,也就是说,并不是目前连接到Windows的USB设备的信息。

这个问题,可以用pyusb这个库解决,但是pyusb需要依赖库,不同的Windows可能需要不同的库,所以如果程序要大规模部署到不同的系统上时,要谨慎考虑。

后来,选用的pyWin32库,这个更通用一些。使用MGMT,试了两个instance,其中“Win32_USBHub”只能抓取部分USB设备的信息;但是“win32_usbcontrollerdevice”可以抓取所有的USB信息。(后来想一想,Win32_USBHub抓取的应该是USB hub的信息;而Win32_USBControllerDevice抓取的是USB device的信息)

使用Win32_USBHub的实例代码如下,

>>> import win32com.client
>>> wmi = win32com.client.GetObject ("winmgmts:")
>>> for usb in wmi.InstancesOf ("Win32_USBHub"):
...    print usb.DeviceID
...

使用Win32_USBControllerDevice的示例代码如下,

import win32com.client    
 
      wmi = win32com.client.GetObject ("winmgmts:")
      for usb in wmi.InstancesOf ("win32_usbcontrollerdevice"):
        if "VID_05E0&PID_2107" in usb.Dependent:
          usbPidVidCorrect = True

以上这篇使用Python在Windows下获取USB PID&VID的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python3整数反转的实现方法

    python3整数反转的实现方法

    这篇文章主要介绍了python3整数反转的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python实现ping指定IP的示例

    Python实现ping指定IP的示例

    今天小编就为大家分享一篇Python实现ping指定IP的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python+tkinter编写一个最近很火的强制表白神器

    Python+tkinter编写一个最近很火的强制表白神器

    这篇文章主要为大家详细介绍了Python如何通过tkinter编写一个最近很火的强制表白神器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起尝试一下
    2023-04-04
  • 回调函数的意义以及python实现实例

    回调函数的意义以及python实现实例

    本篇文章主要介绍了回调函数的意义以及python实现实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • TensorFlow查看输入节点和输出节点名称方式

    TensorFlow查看输入节点和输出节点名称方式

    今天小编就为大家分享一篇TensorFlow查看输入节点和输出节点名称方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 学习Python,你还不知道main函数吗

    学习Python,你还不知道main函数吗

    Python 中的 main 函数充当程序的执行点,在 Python 编程中定义 main 函数是启动程序执行的必要条件。本文就来带大家深入了解一下main函数,感兴趣的可以了解一下
    2022-09-09
  • Python安装第三方库及常见问题处理方法汇总

    Python安装第三方库及常见问题处理方法汇总

    本文给大家汇总介绍了Python安装第三方库及常见问题处理方法,非常的简单使用,有需要的小伙伴可以参考下
    2016-09-09
  • Yolov5多边形标签和JSON数据格式转换

    Yolov5多边形标签和JSON数据格式转换

    通过labelme对图进行标注后,得到的是json文件,而Yolov5对数据进行模型构建的时候,读取需要的是txt格式的文件。所以需要先通过Python进行文件格式的转换,需要的朋友可以参考下
    2023-05-05
  • Python Matplotlib库入门指南

    Python Matplotlib库入门指南

    这篇文章主要介绍了Python Matplotlib库入门指南,本文讲解了Matplotlib是什么,然后给出了Matplotlib基础绘图实例如绘制折线图、绘制多线图,并给出了图例功能使用实例,需要的朋友可以参考下
    2015-05-05
  • Python selenium的这三种等待方式一定要会!

    Python selenium的这三种等待方式一定要会!

    今天给大家带来的是关于Python的相关知识,文章围绕着selenium三种等待方式展开,文中有非常详细的介绍,需要的朋友可以参考下
    2021-06-06

最新评论