使用Python在Windows下獲取USB PID&VID的方法
在Linux系統(tǒng)下獲取USB PID&VID是件十分容易的事情,只需要"lsusb"命令就可以了。
不過,對于Windows,就沒有那么容易了。
之前,有嘗試過通過注冊表來獲得目前連接device的USB PID&VID,不過注冊表里存放的是之前有插入這臺(tái)Windows系統(tǒng)的USB設(shè)備的歷史記錄,也就是說,并不是目前連接到Windows的USB設(shè)備的信息。
這個(gè)問題,可以用pyusb這個(gè)庫解決,但是pyusb需要依賴庫,不同的Windows可能需要不同的庫,所以如果程序要大規(guī)模部署到不同的系統(tǒng)上時(shí),要謹(jǐn)慎考慮。
后來,選用的pyWin32庫,這個(gè)更通用一些。使用MGMT,試了兩個(gè)instance,其中“Win32_USBHub”只能抓取部分USB設(shè)備的信息;但是“win32_usbcontrollerdevice”可以抓取所有的USB信息。(后來想一想,Win32_USBHub抓取的應(yīng)該是USB hub的信息;而Win32_USBControllerDevice抓取的是USB device的信息)
使用Win32_USBHub的實(shí)例代碼如下,
>>> 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的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python3整數(shù)反轉(zhuǎn)的實(shí)現(xiàn)方法
這篇文章主要介紹了python3整數(shù)反轉(zhuǎn)的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
Python實(shí)現(xiàn)ping指定IP的示例
今天小編就為大家分享一篇Python實(shí)現(xiàn)ping指定IP的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06
Python+tkinter編寫一個(gè)最近很火的強(qiáng)制表白神器
這篇文章主要為大家詳細(xì)介紹了Python如何通過tkinter編寫一個(gè)最近很火的強(qiáng)制表白神器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起嘗試一下2023-04-04
回調(diào)函數(shù)的意義以及python實(shí)現(xiàn)實(shí)例
本篇文章主要介紹了回調(diào)函數(shù)的意義以及python實(shí)現(xiàn)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
TensorFlow查看輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)名稱方式
今天小編就為大家分享一篇TensorFlow查看輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)名稱方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
學(xué)習(xí)Python,你還不知道m(xù)ain函數(shù)嗎
Python?中的?main?函數(shù)充當(dāng)程序的執(zhí)行點(diǎn),在?Python?編程中定義?main?函數(shù)是啟動(dòng)程序執(zhí)行的必要條件。本文就來帶大家深入了解一下main函數(shù),感興趣的可以了解一下2022-09-09
Yolov5多邊形標(biāo)簽和JSON數(shù)據(jù)格式轉(zhuǎn)換
通過labelme對圖進(jìn)行標(biāo)注后,得到的是json文件,而Yolov5對數(shù)據(jù)進(jìn)行模型構(gòu)建的時(shí)候,讀取需要的是txt格式的文件。所以需要先通過Python進(jìn)行文件格式的轉(zhuǎn)換,需要的朋友可以參考下2023-05-05
Python selenium的這三種等待方式一定要會(huì)!
今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識(shí),文章圍繞著selenium三種等待方式展開,文中有非常詳細(xì)的介紹,需要的朋友可以參考下2021-06-06

