具体代码如下

#!/usr/bin/python
# -*- coding:utf-8 -*- import sys
import usb.core
# find USB devices
dev = usb.core.find(find_all=True)
# loop through devices, printing vendor and product ids in decimal and hex
for cfg in dev:
sys.stdout.write('Decimal VendorID=' + str(cfg.idVendor) + ' & ProductID=' + str(cfg.idProduct) + '\n')
sys.stdout.write('Hexadecimal VendorID=' + hex(cfg.idVendor) + ' & ProductID=' + hex(cfg.idProduct) + '\n\n')

测试结果如下

键盘有插入时usb的情况

Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 07:18:10) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>>
================== RESTART: C:/Users/libra/Desktop/1111.py ==================
Decimal VendorID=32902 & ProductID=35878
Hexadecimal VendorID=0x8086 & ProductID=0x8c26 Decimal VendorID=32902 & ProductID=35885
Hexadecimal VendorID=0x8086 & ProductID=0x8c2d Decimal VendorID=1133 & ProductID=49948
Hexadecimal VendorID=0x46d & ProductID=0xc31c Decimal VendorID=1266 & ProductID=46001
Hexadecimal VendorID=0x4f2 & ProductID=0xb3b1 Decimal VendorID=7247 & ProductID=81
Hexadecimal VendorID=0x1c4f & ProductID=0x51 Decimal VendorID=32903 & ProductID=32768
Hexadecimal VendorID=0x8087 & ProductID=0x8000 Decimal VendorID=32903 & ProductID=32776
Hexadecimal VendorID=0x8087 & ProductID=0x8008 Decimal VendorID=32902 & ProductID=35889
Hexadecimal VendorID=0x8086 & ProductID=0x8c31

键盘问插入时usb的情况

================== RESTART: C:/Users/libra/Desktop/1111.py ==================
Decimal VendorID=32902 & ProductID=35878
Hexadecimal VendorID=0x8086 & ProductID=0x8c26 Decimal VendorID=32902 & ProductID=35885
Hexadecimal VendorID=0x8086 & ProductID=0x8c2d Decimal VendorID=1266 & ProductID=46001
Hexadecimal VendorID=0x4f2 & ProductID=0xb3b1 Decimal VendorID=7247 & ProductID=81
Hexadecimal VendorID=0x1c4f & ProductID=0x51 Decimal VendorID=32903 & ProductID=32768
Hexadecimal VendorID=0x8087 & ProductID=0x8000 Decimal VendorID=32903 & ProductID=32776
Hexadecimal VendorID=0x8087 & ProductID=0x8008 Decimal VendorID=32902 & ProductID=35889
Hexadecimal VendorID=0x8086 & ProductID=0x8c31

利用pyusb来查询当前所以usb设备的更多相关文章

  1. 利用mass storage class 做免驱动usb设备.

    当需要使用usb bulk传输,想让设备像串口通讯那样和PC主机通信, 通常需要自己做一个PC端的驱动,比较麻烦. 为避免在pc上编写usb设备驱动的麻烦,可以将设备做成mass storage 类的 ...

  2. C#:基于WMI查询USB设备信息 及 Android设备厂商VID列表

    /* ---------------------------------------------------------- 文件名称:WMIUsbQuery.cs 作者:秦建辉 MSN:splashc ...

  3. C#:基于WMI查询USB设备

    来源:http://blog.csdn.net/jhqin/article/details/6734673 /* ------------------------------------------- ...

  4. windodws pyusb hub端口对应连接的usb设备

    源码: 1 #!/usr/bin/python 2 import sys 3 import usb.core 4 # find USB devices 5 dev = usb.core.find(fi ...

  5. Ubuntu/Windows下利用“HIDAPI”库函数实现与Hid类USB设备通信

    一.背景: 最近在做的一个项目需要使用USB传递数据,对USB理解不是很深,USB的系统驱动编写则更是天方 夜谭,因此将设备配置成HID类设备成为了首选.其最大的好处在于,LINUX/Windows系 ...

  6. Linux下usb设备驱动详解

    USB驱动分为两块,一块是USB的bus驱动,这个东西,Linux内核已经做好了,我们可以不管,我们只需要了解它的功能.形象的说,USB的bus驱动相当于铺出一条路来,让所有的信息都可以通过这条USB ...

  7. 《Linux总线、设备与驱动》USB设备发现机制

    说明:本分析基于mstar801平台Linux2.6.35.11内核,其他内核版本仅供参考. 一.程序在内核中的位置 1.usb host做为pci总线下的一个设备存在(嵌入式系统中有可能也会直接挂在 ...

  8. 嵌入式Linux驱动学习之路(二十)USB设备驱动

    USB在接入系统的时候,以0的设备ID和主机通信,然后由主机为其分配新的ID. 在主机端,D+和D-都是下拉接地的.而设备端的D-接上拉时,表明此设备为高速设备:12M/s. D+接上拉时则是全速设备 ...

  9. C#:USB设备枚举 --转自CSDN作者:Splash

    (一)DeviceIoControl的PInvoke /* ---------------------------------------------------------- 文件名称:Device ...

随机推荐

  1. RPM包安装软件 -- 详细解读

    一.RPM包命名规则 1.RPM包在哪 RPM包在光盘中 2.RPM包命名原则 httpd-2.2.15-15.e16.centos.1.i686.rpm httpd 软件包名 2.2.15 软件版本 ...

  2. spring4.3新注解之:@RequestMapping变种(@GetMapping,@PostMapping,@PutMapping,@DeleteMapping,@PatchMapping)

    Spring 4.3 中引进了下面的注解 @RequestMapping 在方法层级的变种,来帮助简化常用 HTTP 方法的映射,并更好地表达被注解的方法的语义.比如,@GetMapping可以读作 ...

  3. 【原创】虚拟机上实现绑定固定IP扩主机容器互访

    Docker绑定固定IP/跨主机容器互访 https://blog.csdn.net/qq_34021712/article/details/75948566 服务器IP   容器分配网段   启动容 ...

  4. 计算机存储单位KB,MB,GB,TB,PB,EB,ZB,YB后面是什么?

    关于计算机存储单位KB,MB,GB,TB,PB,EB,ZB,YB后面是什么? 我们知道Kb是1000的1次方,所以 MB就是1000的2次方(106) GB就是1000的3次方(109) TB就是10 ...

  5. json--处理框架

    1.Android 中的Json解析工具fastjson .序列化.反序列化 2.Android Gson的使用总结 可以处理含有内部类的类,或包含集合内部类的类: 3.Android-JSONToo ...

  6. vue todolist 1.0

    <template> <div id="app"> <input type="text" v-model='todo' /> ...

  7. 00004 - CentOS 7下安装pptp服务端

    主要配置步骤 1. 安装前检查系统支持 a. 在安装之前查看系统是否支持PPTP modprobe ppp-compress-18 && echo success 应该输出:succe ...

  8. 在Java中String类为什么要设计成final?String真的不可变吗?其他基本类型的包装类也是不可变的吗?

    最近突然被问到String为什么被设计为不可变,当时有点懵,这个问题一直像bug一样存在,竟然没有发现,没有思考到,在此总结一下. 1.String的不可变String类被final修饰,是不可继承和 ...

  9. SAS FORMAT 逻辑库存储 【输出格式 没有找到或无法加载】解决方法

    SAS FORMAT 逻辑库存储 [输出格式  没有找到或无法加载]解决方法:需要指定FORMAT 搜索的路径:OPTIONS FMTSEARCH=(F WORK); 以下为完整示例代码: 00@DA ...

  10. CRM stringmap

    CREATE view [dbo].[V_stringmap] as SELECT DISTINCT Entity.Name as tablename,StringMap.AttributeName ...