WMI
Windows Management Instrumentation
What it is and what it does
WMI is a lightweight Python wrapper around Windows Management Instrumentation, Microsoft's system for accessing detailed information about computers and networks. It sits on top of pywin32 and abstracts away the COM plumbing, letting you write simple Python code to query services, hardware, performance metrics, and other system properties on Windows machines.
The package is designed for system administrators and developers who need to automate Windows system tasks—restarting services, checking disk space, monitoring processes, or gathering inventory data. It works by translating Python method calls into WMI queries against the underlying Windows system. However, the package has been abandoned since 2020 and receives no active maintenance, so it may have compatibility issues with newer Python versions or Windows releases.
Use it for:
- Restart or manage Windows services programmatically based on system state.
- Query hardware inventory (disk, memory, network adapters) for system monitoring or reporting.
- Automate administrative tasks like checking running processes or service status across multiple machines.
- Build system health dashboards that pull real-time data from Windows WMI providers.
- Integrate Windows system information into Python-based IT management or monitoring tools.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
WMI wraps Windows Management Instrumentation to let Python code query and control system resources, services, and hardware on Windows machines through a simplified API.
Yes, if you are on Windows and need to query or control system resources via WMI—it remains functional and has no known vulnerabilities. However, be aware that the package is abandoned and untested against Python versions beyond 3.4 or Windows versions beyond 8.x. For new projects, verify compatibility with your Python and Windows versions first, and consider whether a more actively maintained alternative exists for your specific use case.
Install
wmi on PyPI
pip
pip install wmiuv
uv add wmipoetry
poetry add wmiInstalling WMI
Before you install
Installation is straightforward (low friction), but the package is abandoned as of 2020 with no recent maintenance. It depends on pywin32, which is actively maintained, but WMI itself will not receive bug fixes or updates.
License in practice
Licensed under the MIT License (permissive), so you can use it freely in commercial or private projects with minimal restrictions.
Quickstart
pip install wmi
import wmi
c = wmi.WMI()
for service in c.Win32_Service(StartMode="Auto", State="Stopped"):
print(service.Caption)
Requires Windows OS and pywin32 to be installed; will not work on Linux or macOS.
Verify before relying
- Whether the package works reliably with Python versions beyond 3.4 (last tested version mentioned in description).
- Current compatibility with recent pywin32 builds and modern Windows versions (10, 11).
- Whether makepy compilation is still necessary for complex WMI queries on current systems.
Package facts
| License | http://www.opensource.org/licenses/mit-license.php (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — pywin32 |
| Maintenance | abandoned — 2,299 days since the last release |
| First released | |
| Downloads | 1,042,287/month — #4,455 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: WMI-1.5.1-py2.py3-none-any.whl
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
pywin32Provides Python access to Windows APIs and COM…
permissive · top 1,000 on PyPI
shadowcopyCopy files locked by other processes on Windows…
permissive · top 15,000 on PyPI
pypiwin32Installs pywin32 as a dependency, providing…
unclear · top 5,000 on PyPI
pyghmiPyghmi provides Python bindings for IPMI…
permissive · top 15,000 on PyPI
pywinautoAutomate Microsoft Windows GUI interactions by…
permissive · top 5,000 on PyPI
pysmbpysmb implements the SMB/CIFS protocol to let…
permissive · top 5,000 on PyPI
pywin32-ctypesA pure-Python reimplementation of pywin32 that…
permissive · top 5,000 on PyPI
pywinrmpywinrm is a Python client for Windows Remote…
permissive · top 5,000 on PyPI
pyhwpxAutomates HWP (아래아한글) document creation and…
unclear · top 15,000 on PyPI
opentelemetry-instrumentation-tornadoAdds OpenTelemetry tracing instrumentation to…
permissive · top 5,000 on PyPI