[Python]psutil模块:用于获得处理器、系统和进程相关信息

模块地址:

https://pypi.python.org/pypi/psutil/

psutil功能

提供接口可以用来获取信息,包括:

  1. 当前运行的进程
  2. 系统(资源使用)信息
    CPU
    内存
    磁盘
    网络
    用户

安装:

windows下安装比较简单,从这里下相应的安装包exe,傻瓜安装即可。psutil区分python2.7和python3.x,所以针对自己的环境下不同的包。

测试

写了一段代码,主要测试进程相关的功能。psutil还有其他很多的功能,这里就不再写测试代码了。

# -*- coding=utf-8 -*-
import psutil

def get_process_cmdline(process_name):
    '''
    获取进程的命令行
    :param process_name: 进程名
    :return:返回该进程名(可能有多个)的各进程的参数
    '''
    pid_list = psutil.pids()
    for each_pid in pid_list:
        try:
            each_pro = psutil.Process(each_pid)
            if each_pro.name().lower() == process_name.lower():
                yield each_pro.cmdline()
        except psutil.NoSuchProcess, pid:
            print("no process found with pid=%s"%pid)


def kill_process(process_name):
    '''
    杀死进程
    :param process_name: 进程名
    :return:None
    '''
    pid_list = psutil.pids()
    for each_pid in pid_list:
        try:
            each_pro = psutil.Process(each_pid)
            if each_pro.name().lower() == process_name.lower():
                print("found process")
                print("process_name=%s"%each_pro.name())
                print('process_exe=%s'%each_pro.exe())
                print('process_cwd=%s'%each_pro.cwd())
                print('process_cmdline=%s'%each_pro.cmdline())
                print('process_status=%s'%each_pro.status())
                print('process_username=%s'%each_pro.username())
                print('process_createtime=%s'%each_pro.create_time())
                print('now will kill this process')
                each_pro.terminate()
                each_pro.wait(timeout=3)
                print('psutil.test():\n%s'%psutil.test())
        except psutil.NoSuchProcess, pid:
            print("no process found with pid=%s"%pid)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值