Попытка захватить канал USB-устройства с помощью Python. Python не находит никаких USB-устройств - PullRequest
0 голосов
/ 01 мая 2019

Вот код, который я попробовал.
Этот код был фактически написан другим пользователем, но он служит для иллюстрации моей проблемы.
Для первоначального автора код создал список устройств USB.
В моем случае он выдает аналогичный вывод, но пустой список!

Мне действительно пришлось добавить скобки для функции печати. ​​
Не уверен, как оригинальный код работал без них.
Я использую Python 3, а не 2. Никогда не использовал 2.

Вопрос, почему мой код выдает пустой список?
(Работает в Windows 10 на ПК с процессором Intel.)

Python  
import os  
os.environ['PYUSB_DEBUG'] = 'debug'  
import usb.core  
print list(usb.core.find(find_all=True))  

Теперь, ниже, вывод от запускаэтот код на моем компьютере:

============= RESTART: C:/Appl/xxxx/xxxxxx/SandBox/debugUsb.py =============  
2019-05-01 08:24:58,129 ERROR:usb.libloader:'Libusb 1' could not be found  
2019-05-01 08:24:58,145 ERROR:usb.backend.libusb1:Error loading libusb 1.0  
 backend
2019-05-01 08:24:58,145 ERROR:usb.libloader:'OpenUSB library' could not be found
2019-05-01 08:24:58,145 ERROR:usb.backend.openusb:Error loading OpenUSB backend  
2019-05-01 08:24:58,145 INFO:usb.core:find(): using backend  "usb.backend.libusb0"  
2019-05-01 08:24:58,160 DEBUG:usb.backend.libusb0:_LibUSB.enumerate_devices()  
[]
>>> 

А вот типичное устройство, которое, как я думал, я смогу увидеть,
, как показано на USB Control Center, предоставленном полупроводниковой компанией:

(в дальнейшем отступы были отредактированы)

<HID_DEVICE>  
    FriendlyName=""  
    Manufacturer="Logitech"  
    Product="USB Trackball"  
    SerialNumber=""  
    VendorID="04 6D"  
    ProductID="C4 08"  
    Class="00h"  
    SubClass="00h"  
    Protocol="00h"  
    BcdUSB="00 00"  
    Usage="00 02"  
    UsagePage="00 01"  
    Version="14 00"  
    <FEATURE>  
        RptByteLen="2"  
        Buttons="1"  
        Values="0"  
        <BUTTON>  
            ReportID="0"  
            Usage="00 3C"  
            UsagePage="00 01"  
            UsageMax="00 3C"  
            BitField="00 22"  
            LinkCollection="00 00"  
            LinkUsage="00 02"  
            LinkUsagePage="00 01"  
            IsAlias="False"  
            IsRange="False"  
            IsStringRange="False"  
            IsDesignatorRange="False"  
            IsAbsolute="True"  
            StringIndex="0"  
            StringMax="0"  
            DesignatorIndex="0"  
            DesignatorMax="0"  
            DataIndex="0"  
            DataIndexMax="0"  
        </BUTTON>  
    </FEATURE>  
    <INPUT>  
        RptByteLen="4"  
        Buttons="1"  
        Values="2"  
        <BUTTON>  
            ReportID="0"  
            Usage="00 01"  
            UsagePage="00 09"  
            UsageMax="00 05"  
            BitField="00 02"  
            LinkCollection="00 01"  
            LinkUsage="00 01"  
            LinkUsagePage="00 01"  
            IsAlias="False"  
            IsRange="True"  
            IsStringRange="False"  
            IsDesignatorRange="False"  
            IsAbsolute="True"  
            StringIndex="0"  
            StringMax="0"  
            DesignatorIndex="0"  
            DesignatorMax="0"  
            DataIndex="0"  
            DataIndexMax="4"  
        </BUTTON>  
        <VALUE>  
            ReportID="0"  
            Usage="00 31"  
            UsagePage="00 01"  
            UsageMax="00 31"  
            BitField="00 06"  
            LinkCollection="00 01"  
            LinkUsage="00 01"  
            LinkUsagePage="00 01"  
            IsAlias="False"  
            IsRange="False"  
            IsStringRange="False"    
            IsDesignatorRange="False"
            IsAbsolute="False"  
            HasNull="False"  
            StringIndex="0"  
            StringMax="0"    
            DesignatorIndex="0"
            DesignatorMax="0"  
            DataIndex="5"  
            DataIndexMax="5"  
            BitField="00 06"  
            LinkCollection="00 01"  
            LinkUsage="00 01"  
            LinkUsagePage="00 01"  
            BitSize="8"  
            ReportCount="1"  
            Units="0"  
            UnitsExp="0"  
            LogicalMin="-127"  
            LogicalMax="127"  
            PhysicalMin="0"  
            PhysicalMax="0"  
        </VALUE>  
        <VALUE>  
            ReportID="0"  
            Usage="00 30"  
            UsagePage="00 01"  
            UsageMax="00 30"  
            BitField="00 06"  
            LinkCollection="00 01"  
            LinkUsage="00 01"  
            LinkUsagePage="00 01"  
            IsAlias="False"  
            IsRange="False"  
            IsStringRange="False"  
            IsDesignatorRange="False"  
            IsAbsolute="False"  
            HasNull="False"  
            StringIndex="0"  
            StringMax="0"  
            DesignatorIndex="0"  
            DesignatorMax="0"  
            DataIndex="6"  
            DataIndexMax="6"  
            BitField="00 06"  
            LinkCollection="00 01"  
            LinkUsage="00 01"  
            LinkUsagePage="00 01"  
            BitSize="8"  
            ReportCount="1"  
            Units="0"  
            UnitsExp="0"  
            LogicalMin="-127"  
            LogicalMax="127"  
            PhysicalMin="0"  
            PhysicalMax="0"  
        </VALUE>
    </INPUT>
</HID_DEVICE>
...