Python que supervisa el servicio de Windows

Python que supervisa el servicio de Windows

wmiPython 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 wmiel módulo, primero se debe instalar el paquete wmi. Se puede instalar con el siguiente comando:

pip install wmi

Consultar estado del servicio

Utilice wmiel 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

osEl 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 psutilel 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.

Supongo que te gusta

Origin blog.csdn.net/sinat_35773915/article/details/132223147
Recomendado
Clasificación