Python que supervisa el servicio de Windows
wmi
Python puede usar el módulo para monitorear los servicios de Windows en sistemas Windows . Este artículo presentará cómo usar Python para monitorear los servicios de Windows e implementar la consulta de estado del servicio y las funciones de inicio y detención del servicio.
instalar dependencias
Antes de usar wmi
el módulo, primero se debe instalar el paquete wmi. Se puede instalar con el siguiente comando:
pip install wmi
Consultar estado del servicio
Utilice wmi
el módulo para consultar los servicios existentes en el sistema de Windows y el estado de ejecución de los servicios. El código de ejemplo es el siguiente:
import wmi
# 获取服务状态
def get_service_status(service_name):
wmiobj = wmi.WMI()
services = wmiobj.Win32_Service(Name = service_name)
print(services[0].state)
return services[0].state
# 查询系统中所有服务
def query_all_services():
wmiobj = wmi.WMI()
services = wmiobj.Win32_Service()
for i in services:
print(i)
Iniciar y detener servicios
os
El servicio se puede iniciar y detener utilizando el módulo. El método específico es el siguiente:
import os
import ctypes
#判断是否有管理员权限
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
# 启动服务
def start_service(service_name):
if is_admin():
cmd = 'NET START {}'.format(service_name)
result = os.popen(cmd)
print(result)
else:
print('no admin')
# 停止服务
def stop_service(service_name):
if is_admin():
cmd = 'NET STOP {}'.format(service_name)
result = os.popen(cmd)
print(result)
else:
print('no admin')
Obtener información de la memoria
Utilice psutil
el módulo para obtener información de la memoria. El método específico es el siguiente:
# -*- encoding: utf-8 -*-
# 获取内存信息
def get_memory_info():
memory_info = {
}
mem_info = psutil.virtual_memory()
memory_info['total'] = mem_info.total
memory_info['available'] = mem_info.available
memory_info['percent'] = mem_info.percent
memory_info['used'] = mem_info.used
memory_info['free'] = mem_info.free
print(memory_info)
print(memory_info['percent'])
Código de muestra
Se adjunta un código de muestra completo que demuestra cómo consultar todos los servicios en el sistema e iniciar y detener los servicios:
resumen
Este artículo presenta cómo usar Python para monitorear los servicios de Windows y realiza la consulta del estado del servicio y la función de iniciar y detener los servicios. Si necesita administrar los servicios de Windows, puede usar el código proporcionado en este artículo como referencia.