Python获取系统所有进程PID及进程名称的方法示例

本文实例讲述了Python获取系统所有进程PID及进程名称的方法。分享给大家供大家参考,具体如下:

psutil模块中提供了进程管理方法,引用其中的几个方法就能够获得进程的相关信息。简单写个小脚本测试一下,顺便看看本机Windows7系统中到底运行着多少个进程,进程都是什么。

代码:

# -*- coding: utf-8 -*-
#! python2
#!/usr/bin/python
import psutil
pids = psutil.pids()
for pid in pids:
  p = psutil.Process(pid)
  print("pid-%d,pname-%s" %(pid,p.name()))

运行结果:

pid-0,pname-System Idle Process
pid-4,pname-System
pid-288,pname-smss.exe
pid-428,pname-csrss.exe
pid-480,pname-wininit.exe
pid-500,pname-csrss.exe
pid-544,pname-services.exe
pid-576,pname-winlogon.exe
pid-588,pname-lsass.exe
pid-596,pname-lsm.exe
pid-716,pname-svchost.exe
pid-800,pname-svchost.exe
pid-864,pname-svchost.exe
pid-932,pname-svchost.exe
pid-1012,pname-svchost.exe
pid-1128,pname-svchost.exe
pid-1324,pname-ZhuDongFangYu.exe
pid-1348,pname-svchost.exe
pid-1468,pname-spoolsv.exe
pid-1608,pname-svchost.exe
pid-1692,pname-360bpsvc.exe
pid-1736,pname-AlibabaProtect.exe
pid-1892,pname-QQProtect.exe
pid-1928,pname-secbizsrv.exe
pid-1996,pname-TBSecSvc.exe
pid-2004,pname-taskhost.exe
pid-356,pname-httpd.exe
pid-348,pname-mysqld.exe
pid-592,pname-dwm.exe
pid-1560,pname-explorer.exe
pid-1304,pname-wwbizsrv.exe
pid-2248,pname-360tray.exe
pid-2320,pname-tomcat6w.exe
pid-2408,pname-360sd.exe
pid-2596,pname-TaobaoProtect.exe
pid-2696,pname-aliwssv.exe
pid-2736,pname-conhost.exe
pid-2996,pname-360bdoctor.exe
pid-3132,pname-360rp.exe
pid-3740,pname-httpd.exe
pid-3072,pname-QQ.exe
pid-3180,pname-svchost.exe
pid-3544,pname-baidupinyin.exe
pid-3788,pname-TXPlatform.exe
pid-4124,pname-svchost.exe
pid-5104,pname-SoftMgrLite.exe
pid-6000,pname-360se.exe
pid-6112,pname-360se.exe
pid-4136,pname-wdswfsafe.exe
pid-2936,pname-360se.exe
pid-5180,pname-360se.exe
pid-4452,pname-360se.exe
pid-5500,pname-360se.exe
pid-1812,pname-360se.exe
pid-2640,pname-eclipsePHP.exe
pid-4556,pname-javaw.exe
pid-2032,pname-360se.exe
pid-6236,pname-QQ.exe
pid-5416,pname-360se.exe
pid-4196,pname-360se.exe
pid-5380,pname-chrome.exe
pid-5220,pname-chrome.exe
pid-4652,pname-chrome.exe
pid-7880,pname-chrome.exe
pid-9168,pname-chrome.exe
pid-6432,pname-chrome.exe
pid-6680,pname-360se.exe
pid-2404,pname-360se.exe
pid-9432,pname-chrome.exe
pid-8692,pname-flashfxp.exe
pid-10116,pname-flashfxp.exe
pid-6628,pname-360se.exe
pid-8504,pname-360se.exe
pid-6464,pname-BFDesktopTips.exe
pid-11764,pname-audiodg.exe
pid-9364,pname-TTPlayer.exe
pid-6356,pname-360se.exe
pid-8808,pname-360se.exe
pid-8640,pname-eclipse.exe
pid-11344,pname-python2.exe
pid-5880,pname-conhost.exe
pid-4656,pname-chrome.exe
pid-3188,pname-360se.exe
pid-9992,pname-360se.exe
pid-12116,pname-cmd.exe
pid-9248,pname-conhost.exe
pid-7208,pname-python2.exe
pid-1832,pname-conhost.exe

注:这里使用了psutil模块,若提示Unresolved import: psutil,则需要使用如下命令进行安装:

pip install psutil

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python进程与线程操作技巧总结》、《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

(0)

相关推荐

  • python实现PID算法及测试的例子

    PID算法实现 import time class PID: def __init__(self, P=0.2, I=0.0, D=0.0): self.Kp = P self.Ki = I self.Kd = D self.sample_time = 0.00 self.current_time = time.time() self.last_time = self.current_time self.clear() def clear(self): self.SetPoint = 0.0 s

  • 用python记录运行pid,并在需要时kill掉它们的实例

    我在跑爬虫程序的时候,由于爬虫程序的等待目标服务器返回数据的时间很长,而cpu占用很低,所以经常挂着代理一跑就跑好几百个.但是爬虫程序通常是写了死循环,或直到分配给该进程的任务都跑完才退出的.如果我们想中途结束掉这些任务,是没办法手工一个一个kill掉的.那么该如何结束这些进程呢? 我的方法就是在运行爬虫进程时,记录该进程的Pid,然后在需要手动结束时,再用语句kill掉它们. for i in {1..100} do nohup python NetEase_comms_proxy.py >

  • python 根据pid杀死相应进程的方法

    用python语言实现根据pid杀死相应进程 kill_process.py代码如下 #! /usr/bin/python # -*- coding: utf-8 -*- import os import sys import signal def kill(pid): try: a = os.kill(pid, signal.SIGKILL) # a = os.kill(pid, signal.9) # 与上等效 print '已杀死pid为%s的进程, 返回值是:%s' % (pid, a)

  • 使用python 获取进程pid号的方法

    保存为.py文件后 运行脚本在后面添加进程名称即可 比如:python proinfo.py qq 即可获取QQ的进程信息,注意不区分大小写 复制代码 代码如下: #-*- encoding:UTF-8 -*-import osimport sysimport string import psutilimport re def get_pid(name): process_list = psutil.get_process_list() regex = "pid=(\d+),\sname=\'&

  • python爬虫框架talonspider简单介绍

    1.为什么写这个? 一些简单的页面,无需用比较大的框架来进行爬取,自己纯手写又比较麻烦 因此针对这个需求写了talonspider: •1.针对单页面的item提取 - 具体介绍点这里 •2.spider模块 - 具体介绍点这里 2.介绍&&使用 2.1.item 这个模块是可以独立使用的,对于一些请求比较简单的网站(比如只需要get请求),单单只用这个模块就可以快速地编写出你想要的爬虫,比如(以下使用python3,python2见examples目录): 2.1.1.单页面单目标 比如

  • python使用标准库根据进程名如何获取进程的pid详解

    前言 标准库是Python的一个组成部分.这些标准库是Python为你准备好的利器,可以让编程事半功倍.特别是有时候需要获取进程的pid,但又无法使用第三方库的时候.下面话不多说了,来一起看看详细的介绍吧. 方法适用linux平台. 方法1 使用subprocess 的check_output函数执行pidof命令 from subprocess import check_output def get_pid(name): return map(int,check_output(["pidof&

  • 以Python的Pyspider为例剖析搜索引擎的网络爬虫实现方法

    在这篇文章中,我们将分析一个网络爬虫. 网络爬虫是一个扫描网络内容并记录其有用信息的工具.它能打开一大堆网页,分析每个页面的内容以便寻找所有感兴趣的数据,并将这些数据存储在一个数据库中,然后对其他网页进行同样的操作. 如果爬虫正在分析的网页中有一些链接,那么爬虫将会根据这些链接分析更多的页面. 搜索引擎就是基于这样的原理实现的. 这篇文章中,我特别选了一个稳定的."年轻"的开源项目pyspider,它是由 binux 编码实现的. 注:据认为pyspider持续监控网络,它假定网页在一

  • Python获取系统所有进程PID及进程名称的方法示例

    本文实例讲述了Python获取系统所有进程PID及进程名称的方法.分享给大家供大家参考,具体如下: psutil模块中提供了进程管理方法,引用其中的几个方法就能够获得进程的相关信息.简单写个小脚本测试一下,顺便看看本机Windows7系统中到底运行着多少个进程,进程都是什么. 代码: # -*- coding: utf-8 -*- #! python2 #!/usr/bin/python import psutil pids = psutil.pids() for pid in pids: p

  • python获取系统内存占用信息的实例方法

    psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控,分析和限制系统资源及进程的管理.它实现了同等命令行工具提供的功能,如ps.top.lsof.netstat.ifconfig.who.df.kill.free.nice.ionice.iostat.iotop.uptime.pidof.tty.taskset.pmap等.目前支持32位和64位的Li

  • Python获取系统默认字符编码的方法

    本文实例讲述了Python获取系统默认字符编码的方法.分享给大家供大家参考.具体分析如下: 在Python代码中,普通字符串的编码方式与程序源文件编码方式一致的,而很多IDE在默认情况下,将程序源文件按照系统默认字符编码来保存的. 下面给出用Python获取系统默认编码的例子: #!/usr/bin/env python #coding=utf-8 """ 获取系统默认编码 """ import sys print sys.getdefaulte

  • python获取局域网占带宽最大3个ip的方法

    本文实例讲述了python获取局域网占带宽最大3个ip的方法.分享给大家供大家参考.具体实现方法如下: import re import urllib url = 'http://admin:netcenter@192.168.0.1/analyze.cgi?page=1&px=3&sf=1' a = urllib.urlopen(url).read() ip = re.findall(r'192\.168\.\d+\.\d+', a, re.M) ip1 = ip[0] ip2 = ip

  • python获取指定路径下所有指定后缀文件的方法

    本文实例讲述了python获取指定路径下所有指定后缀文件的方法.分享给大家供大家参考.具体实现方法如下: # 获取指定路径下所有指定后缀的文件 # dir 指定路径 # ext 指定后缀,链表&不需要带点 或者不指定.例子:['xml', 'java'] def GetFileFromThisRootDir(dir,ext = None): allfiles = [] needExtFilter = (ext != None) for root,dirs,files in os.walk(dir

  • Python获取当前页面内所有链接的四种方法对比分析

    本文实例讲述了Python获取当前页面内所有链接的四种方法.分享给大家供大家参考,具体如下: ''' 得到当前页面所有连接 ''' import requests import re from bs4 import BeautifulSoup from lxml import etree from selenium import webdriver url = 'http://www.testweb.com' r = requests.get(url) r.encoding = 'gb2312'

  • python获取本机mac地址和ip地址的方法

    本文实例讲述了python获取本机mac地址和ip地址的方法.分享给大家供大家参考.具体如下: import sys, socket def getipaddrs(hostname): result = socket.getaddrinfo(hostname,None,0,socket.SOCK_STREAM) return [x[4][0] for x in result] # the name of the local machine hostname = socket.gethostnam

  • python获取网页中所有图片并筛选指定分辨率的方法

    压测时,图片太少,想着下载网页中的图片,然后过滤指定分辨率,但网页中指定分辨率的图片太少了(见下) 后使用格式工厂转换图片 import urllib.request # 导入urllib模块 import re # 导入re模块 import os from PIL import Image htmlurl = 'http://www.win4000.com/wallpaper_detail_134824_3.html' downloadpath = 'C:\\Users\\yaowanjun

  • python 获取指定文件夹下所有文件名称并写入列表的实例

    如下所示: import os import os.path rootdir = "./pic_data" file_object = open('train_list.txt','w') for parent,dirnames,filenames in os.walk(rootdir): for filename in filenames: print filename file_object.write(filename+ '\n') file_object.close() 在做深

  • 对Python 获取类的成员变量及临时变量的方法详解

    利用Python反射机制,从代码块中静态获取参数: co_argcount: 普通参数的总数,不包括参数和*参数. co_names: 所有的参数名(包括参数和*参数)和局部变量名的元组. co_varnames: 所有的局部变量名的元组. co_filename: 源代码所在的文件名. co_flags: 这是一个数值,每一个二进制位都包含了特定信息.较关注的是0b100(0x4)和0b1000(0x8),如果co_flags & 0b100 != 0,说明使用了*args参数:如果co_fl

随机推荐