Для получения информации об устройствах, включая COM-порты на системе Windows, вы можете использовать библиотеку `pywin32`, которая предоставляет интерфейс для работы с API Windows.
Установите пакет `pywin32`, если он у вас ещё не установлен:
```bash
pip install pywin32
```
После установки вы можете использовать следующий скрипт для получения списка COM-портов и их описаний:
```python
import win32com.client
def get_com_ports():
# Получаем WMI интерфейс
wmi = win32com.client.GetObject("winmgmts:")
# Запрашиваем информацию о COM портах через WMI запрос
for obj in wmi.InstancesOf("Win32_SerialPort"):
# Получаем имя и описание каждого COM порта
name = obj.Properties_("Name").Value
description = obj.Properties_("Description").Value
print(f"{name} – {description}")
get_com_ports()
```
Этот скрипт получит список COM-портов и будет показывать их имена вместе с описаниями, которые вы видите в диспетчере устройств.
Что касается безопасности, получение такой информации должно быть возможно без особых привилегий, однако на некоторых системах могут быть настройки политик или антивирусного программного обеспечения, которые ограничивают доступ к WMI. Если скрипт не работает из-за настроек безопасности, вам потребуются соответствующие разрешения на выполнение WMI-запросов.