http://www.crifan.com/try_python_psutil/

无意间得知了psutil模块,去网上找了下,找到:

http://pypi.python.org/pypi/psutil

目前最新版是0.6.1

打算去折腾折腾。

不过先看看介绍。


psutil简介

psutil是什么

psutil是个Python模块。

psutil能干啥

psutil能干的事是:提供了个接口,可以用来获取信息,包括:

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

psutil实现了很多功能,包括了如下工具所具有的:

  • ps
  • top
  • df
  • kill
  • free
  • lsof
  • free
  • netstat
  • ifconfig
  • nice
  • ionice
  • iostat
  • iotop
  • uptime
  • pidof
  • tty
  • who
  • taskset
  • pmap

由此可见,也就可以利用psutil去实现kill的功能,而把某个进程干掉。

下载psutil

找到下载的地方:

http://code.google.com/p/psutil/downloads/list

下载和我当前系统:

win7 64位

Python 2.7.2

对应的:

psutil-0.6.1.win-amd64-py2.7.exe

得到

psutil-0.6.1.win-amd64-py2.7.exe

安装psutil

双击psutil-0.6.1.win-amd64-py2.7.exe去安装:

此处可以正确的检测出Python的安装路径:

准备安装:

很快就安装完毕了:

使用psutil

试着去写写代码。

此处,尝试去找到,当前进程中正在运行的有道词典的信息,并打印出来。

进程名是:YodaoDict.exe

然后再干掉此进程。

然后参考:

http://pypi.python.org/pypi/psutil

中的“Process management”,去写代码。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
Function:
【记录】折腾Python中的psutil:一个用于获得处理器和系统相关信息的模块
http://www.crifan.com/try_python_psutil
Author:     Crifan Li
Version:    2013-01-02
Contact:    admin at crifan dot com
"""
import psutil;
def tryPsutil():
    pidList= psutil.get_pid_list();
    print"pidList=",pidList;
     
    #processToTest = "QQ.exe";
    processToTest= "YodaoDict.exe";
     
    foreachPid in pidList:
        try:
            eachProcess= psutil.Process(eachPid);
            #print "eachProcess=",eachProcess;
            processName= eachProcess.name;
            if(processName.lower()== processToTest.lower()):
                print"Found process";
                print"processName=",processName;
                processExe= eachProcess.exe;
                print"processExe=",processExe;
                processGetcwd= eachProcess.getcwd();
                print"processGetcwd=",processGetcwd;
                processCmdline= eachProcess.cmdline;
                print"processCmdline=",processCmdline;
                processStatus= eachProcess.status;
                print"processStatus=",processStatus;
                processUsername= eachProcess.username;
                print"processUsername=",processUsername;
                processCreateTime= eachProcess.create_time;
                print"processCreateTime=",processCreateTime;
                print"Now will terminate this process !";
                eachProcess.terminate();
                eachProcess.wait(timeout=3);
                print"psutil.test()=",psutil.test();
                 
        exceptpsutil.NoSuchProcess,pid:
            print"no process found with pid=%s"%(pid);
if __name__ =="__main__":
    tryPsutil();

完整的输出效果是:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
E:\Dev_Root\python\try_psutil>try_psutil.py
pidList= [0, 4, 412, 496, 564, 576, 620, 628, 636, 700, 784, 860, 928, 992, 172, 452, 1064, 1124, 1208, 1412, 1448, 1504
, 1644, 1696, 1760, 1784, 1884, 1960, 2024, 1136, 1340, 2156, 2264, 2296, 2316, 2444, 2584, 2592, 2712, 2756, 2952, 3004
, 2480, 2988, 2108, 3268, 3808, 4008, 2512, 3580, 4284, 5040, 2092, 4120, 5060, 1524, 4436, 5488, 5520, 5888, 5696, 1912
, 1660, 8432, 1060, 976, 7416, 7656, 1736, 5412, 9628, 9712, 10072, 15508, 19368, 21096, 17132, 24396, 26680, 34056, 290
20, 31976, 24472, 32380, 32544, 25272, 35712, 23604, 32516, 36484, 35852, 37540, 37236, 37348, 38820, 37256, 38304, 3807
2, 36392, 22808]
Found process
processName= YodaoDict.exe
processExe= D:\Program Files (x86)\Youdao\Dict4\YodaoDict.exe
processGetcwd= C:\Windows
processCmdline= ['D:\\Program Files (x86)\\Youdao\\Dict4\\YodaoDict.exe','start', '-hide']
processStatus= running
processUsername= NYBDHB7EB3XEHP6\Administrator
processCreateTime= 1357032858.0
Now will terminate this process !
psutil.test()=USER         PID %CPU %MEM     VSZ     RSS TTY           START    TIME  COMMAND
SYSTEM         0  0.0    ?       ?      24 ?             Jan01   49:51  System Idle Process
SYSTEM         4  0.0    ?     132     380 ?             Jan01   43:10  System
             172  0.0  0.2   11172   15164 ?             Jan01   00:18  svchost.exe
             412  0.0    ?     560     500 ?             Jan01   00:00  smss.exe
             452  0.0  0.8   47740   51376 ?             Jan01   04:49  svchost.exe
             496  0.0  0.1    2664    3196 ?             Jan01   00:04  csrss.exe
             564  0.0    ?    1724    1404 ?             Jan01   00:00  wininit.exe
             576  0.0  0.6    4012   36836 ?             Jan01   05:42  csrss.exe
             620  0.0  0.1    4964    6744 ?             Jan01   00:05  services.exe
             628  0.0  0.2    7116    9640 ?             Jan01   00:45  lsass.exe
             636  0.0  0.1    3460    3444 ?             Jan01   00:11  lsm.exe
             700  0.0  0.1    3396    4200 ?             Jan01   00:00  winlogon.exe
             784  0.0  0.1    5696    7244 ?             Jan01   02:45  svchost.exe
             860  0.0  0.1    6228    7652 ?             Jan01   00:07  svchost.exe
             928  0.0    ?    1728    2132 ?             Jan01   00:00  atiesrxx.exe
Administra   976  0.0  4.0  178760  247656 ?             Jan01   37:11  360se.exe
             992  0.0  0.2   21888   14048 ?             Jan01   00:58  svchost.exe
Administra  1060  0.0  0.6   98736   33944 ?             Jan01   00:49  QQExternal.exe
            1064  0.0  0.2    7556   10620 ?             Jan01   03:03  svchost.exe
            1124  0.0  0.1    2768    4524 ?             Jan01   00:00  atieclxx.exe
            1136  0.0    ?    1612    1484 ?             Jan01   00:00  IMEDICTUPDATE.EXE
            1208  0.0  0.4   27944   26804 ?             Jan01   06:29  svchost.exe
            1340  0.0  0.2  144172   12580 ?             Jan01   19:20  sqlservr.exe
            1412  0.0  0.1    6792    8664 ?             Jan01   00:03  spoolsv.exe
            1448  0.0  0.3    9676   16436 ?             Jan01   00:37  svchost.exe
            1504  0.0  0.2   10884   12756 ?             Jan01   00:33  svchost.exe
Administra  1524  0.0  0.2   11016   10572 ?             Jan01   00:13  QQProtect.exe
Administra  1644  0.0  0.1    2628    3988 ?             Jan01   00:00  taskeng.exe
Administra  1660  0.0  0.1    4284    3752 ?             Jan01   00:00  rundll32.exe
Administra  1696  0.0  0.9   41660   52284 ?             Jan01   19:30  dwm.exe
Administra  1736  0.0  0.6   45340   38496 ?             Jan01   00:09  360se.exe
Administra  1760  0.0    ?   10964    1188 ?             Jan01   03:44  GooglePinyinDaemon.exe
Administra  1784  0.0  1.6  101440   99904 ?             Jan01   04:51  explorer.exe
            1884  0.0  0.1    6192    8124 ?             Jan01   19:21  AlipaySecSvc.exe
            1912  0.0  0.4   47028   21968 ?             Jan01   05:25  svchost.exe
            1960  0.0  0.2   16520   14060 ?             Jan01   00:21  DTLService.exe
            2024  0.0  0.2   10096   13324 ?             Jan01   00:02  IcbcDaemon_64.exe
Administra  2092  0.0    ?    1212     692 ?             Jan01   00:00  GooglePinyinService.exe
Administra  2108  0.0  0.1    4780    6636 ?             Jan01   00:27  WPService.exe
            2156  0.0  0.1    3940    3652 ?             Jan01   00:00  TenpayServer.exe
            2264  0.0    ?    2196    2596 ?             Jan01   00:00  sqlwriter.exe
Administra  2296  0.0  0.1    8600    5028 ?             Jan01   00:00  RAVCpl64.exe
            2316  0.0    ?    2204    3052 ?             Jan01   00:00  svchost.exe
            2444  0.0  0.1    4252    4900 ?             Jan01   00:01  WLIDSVC.EXE
Administra  2480  0.0  0.2   10356   12348 ?             Jan01   00:15  wandoujia_helper.exe
            2512  0.0  0.3   31548   17804 ?             Jan01   00:47  SearchIndexer.exe
Administra  2584  0.0    ?    1956    2384 ?             Jan01   00:01  ctfmon.exe
Administra  2592  0.0  0.7   33232   39988 ?             Jan01   02:48  picpick.exe
Administra  2712  0.0  0.2    8032    9828 ?             Jan01   00:33  TSVNCache.exe
            2756  0.0    ?    1504    1352 ?             Jan01   00:00  WLIDSVCM.EXE
Administra  2988  0.0    ?    1216    1140 ?             Jan01   00:00  jusched.exe
Administra  3004  0.0  0.1    5252    8444 ?             Jan01   02:52  RenRenService.exe
Administra  3268  0.0  0.1   40984    4996 ?             Jan01   00:02  MOM.exe
            3580  0.0  0.2    6280    9724 ?             Jan01   00:06  OSPPSVC.EXE
Administra  3808  0.0  0.1  112036    6108 ?             Jan01   00:44  CCC.exe
Administra  4008  0.0  0.1    4072    4840 ?             Jan01   00:02  WordBook.exe
Administra  4120  0.0    ?    2616    2616 ?             Jan01   00:06  wandoujia_daemon.exe
            4284  0.0  0.1    2528    3476 ?             Jan01   00:16  svchost.exe
Administra  4436  0.0  3.1  272020  190740 ?             Jan01   23:57  QQ.exe
Administra  5040  0.0  0.2    7404    9336 ?             Jan01   17:43  Alipaybsm.exe
Administra  5060  0.0    ?    2104    2452 ?             Jan01   00:00  conhost.exe
Administra  5412  0.0  1.4   88396   83880 ?             Jan01   00:34  360se.exe
Administra  5488  0.0    ?    1492    1620 ?             Jan01   00:00  TXPlatform.exe
Administra  5520  0.0  0.2   11376   12816 ?             Jan01   00:01  BFVDesktop.exe
            5696  0.0    ?    1392    1280 ?             Jan01   00:00  svchost.exe
            5888  0.0  0.1   27820    7984 ?             Jan01   00:00  PresentationFontCache.exe
Administra  7416  0.0  0.5   38564   28756 ?             Jan01   00:02  360se.exe
Administra  7656  0.0    ?   15656    1936 ?             Jan01   00:23  360seNotify.exe
Administra  8432  0.0  2.8  174100  170100 ?             Jan01   05:17  xntalk.exe
Administra  9628  0.0  0.9   58392   56696 ?             Jan01   44:49  360se.exe
Administra  9712  0.0  0.6   57184   38136 ?             Jan01   00:14  360se.exe
Administra 10072  0.0  0.7   50592   45444 ?             Jan01   00:44  360se.exe
Administra 15508  0.0  1.4   83116   83504 ?             Jan01   00:53  360se.exe
Administra 17132  0.0  0.7   55712   42712 ?             Jan01   00:19  explorer.exe
           19368  0.0    ?    3300    2736 ?             Jan01   00:02  SearchProtocolHost.exe
Administra 21096  0.0  0.5   34800   32656 ?             Jan01   00:12  explorer.exe
Administra 22808  0.0  0.2    7456   11080 ?             17:52   00:06  python.exe
           23604  0.0  0.3   20416   19920 ?             16:46   00:16  audiodg.exe
Administra 24396  0.0  0.1    5452    4640 ?             Jan01   00:02  SogouCloud.exe
Administra 24472  0.0  0.6   26668   37268 ?             02:28   03:34  ThunderPlatform.exe
Administra 25272  0.0  0.5   23196   32928 ?             15:00   05:00  AlipaySafeTran.exe
SYSTEM     26680  0.0    ?    3308    2980 ?             00:17   00:00  SearchFilterHost.exe
Administra 29020  0.0  0.7   39320   45516 ?             02:16   00:07  360se.exe
Administra 31976  0.0  1.6   81512   98160 ?             02:28   09:27  Thunder.exe
Administra 32380  0.0  1.4   75472   85876 ?             14:39   02:10  360se.exe
Administra 32516  0.0  0.5   28212   31000 ?             16:47   00:00  360se.exe
Administra 32544  0.0  0.5   31912   33572 ?             14:55   00:03  360se.exe
Administra 34056  0.0  0.6   60452   37664 ?             02:08   07:40  QQExternal.exe
Administra 35712  0.0  0.8   12776   52096 ?             16:25   00:05  rrbrowser.exe
Administra 35852  0.0  2.7  115688  164640 ?             16:50   01:19  WindowsLiveWriter.exe
Administra 36392  0.0  0.1    2284    6900 ?             17:29   00:01  conhost.exe
Administra 36484  0.0  0.4   20220   23300 ?             16:47   00:05  360se.exe
Administra 37236  0.0  0.6   29856   33916 ?             16:59   00:03  360se.exe
Administra 37256  0.0  0.5   17056   29612 ?             17:18   01:05  notepad++.exe
Administra 37336  0.0  0.3   11344   18764 ?             17:52   00:01  PinyinUp.exe
Administra 37348  0.0  0.5   30344   33576 ?             16:59   00:02  360se.exe
Administra 37540  0.0  0.1    4972    8968 ?             16:54   00:00  rundll32.exe
Administra 38072  0.0  0.1    2920    6796 ?             17:29   00:00  cmd.exe
Administra 38304  0.0  0.2    4008   13268 ?             17:23   01:21  taskmgr.exe
Administra 38820  0.0  0.7   24468   41916 ?             17:16   00:02  explorer.exe
None
E:\Dev_Root\python\try_psutil>
E:\Dev_Root\python\try_psutil>

另外的,关于相关的其函数,比如kill,都可以参考官网的解释:

http://code.google.com/p/psutil/wiki/Documentation

比如:

  • terminate()

    Terminate the process with SIGTERM signal. On Windows this is an alias forkill().

  • kill()

    Kill the current process by using SIGKILL signal.

总结

psutil,效果还是很不错的。

Python中的psutil:一个用于获得处理器和系统相关信息的模块相关推荐

  1. putil:一个用于获得处理器和系统相关信息的模块

    psutil能干的事是:提供了个接口,可以用来获取信息,包括: 当前运行的进程 系统(资源使用)信息 CPU 内存 磁盘 网络 用户 psutil实现了很多功能,包括了如下工具所具有的: ps top ...

  2. 从Python中的另一个文件调用函数

    本文翻译自:Call a function from another file in Python Set_up: I have a .py file for each function I need ...

  3. Python中如何定义一个函数

    任何编程语言知识它的基础知识都是有些枯燥的,我们一定要多练习, 多实践.下面小编来将一下Python中如何定义一个函数. 最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可 ...

  4. python的input添加变量_在python中如何定义一个全局变量raw_input() 与 input()的区别...

    raw_input和input两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同.下面举两个例子,来说明两者使用上的不同. 例子1Python 2.7.5 ( ...

  5. python编写赛车游戏单机版_使用Python中OrderedDict模拟一个简单的竞速游戏排名

    上一篇,我们梳理了Python中关于字典排序的一些常用方法(杂乱无章的数据结构如何进行排序,简明讲述Python字典排序那些事).其中,我们讲到了Python的collections模块中的Order ...

  6. python中的成员运算符用于判断什么_Python之运算符

    原标题:Python之运算符 这章我们介绍如何用Python的运算符,大家不懂的地方可以加群:579817333咨询学习 Python运算符包括赋值运算符.算术运算符.关系运算符.逻辑运算符.位运算符 ...

  7. [转载] Python中endswith() 函数法用于判断字符串是否以指定后缀结尾

    参考链接: Python中的字符串的endswith endswith()函数 描述: Python endswith() 函数法用于判断字符串是否以指定后缀结尾. 如果以指定后缀结尾返回True,否 ...

  8. python中如何查一个函数的用法_Python常见内置函数用法(三)

    本文作者:孙雪丽 文字编辑:周聪聪 技术总编:张学人重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至7 ...

  9. python中怎么画一个机器猫_如何用Python画一只机器猫?

    作者 | 人邮异步社区 责编 | 胡巍巍 出品 | CSDN博客 自信心是成功的源泉,对刚入门编程行业的初级程序员来说,多敲代码多做项目就是构建自信心的最好办法. 第一次学编程是在屏幕上敲出" ...

最新文章

  1. java 时间的封装类
  2. MySQL数据库root账户密码忘记两种处理方法转载
  3. [iOS]C语言技术视频-10-指针变量
  4. 最优布线问题(普里姆算法)
  5. 设计一个模型计算机的原理,计算机组成原理——基本模型机设计与实现
  6. 2013\Province_Java_A\2.振兴中华
  7. 单例设计模式-序列化破坏单例模式原理解析及解决方案
  8. EF架构~LinqToEntity里实现left join的一对一与一对多
  9. 伍迷随想冷饭集 之 瞻前顾后之随想
  10. php 复制行,phpstorm怎么快速复制当前行?
  11. .NET常用工具类集锦
  12. mysql触发器不起作用 navicat的bug?
  13. 小白教你用Java生成验证码
  14. Observe rainy world
  15. python3数据结构菜鸟教程_Python3
  16. python语言属于科学计算语言吗_python语言属于( )
  17. C语言到底有多强大?
  18. 【安卓】处理Android Studio中文字体为繁体字
  19. Marvell88Q5192 switch调试记录(BSTA1000B平台)
  20. android手机震动

热门文章

  1. 正交函数集与信号在正交函数集上的分解
  2. Windows域环境使用教程实验
  3. java学习资料文档和视频(转)
  4. 超前进位加法器实验报告_北科大第二次计组实验报告超前进位加法器.doc
  5. python webm 转 wav
  6. Oracle触发器来记录表删除操作简单方法
  7. java adt monkeyrunner_MonkeyRunner初学者安装问题
  8. TRW破解计量器具管理系统MEMS2.0
  9. 鸿蒙开发板怎么玩?Neptune开发教程---OpenHarmony开发体验-环境搭建-编译-烧录
  10. Xenu-web开发死链接检測工具应用