使用Python在Mac上获取开放式应用程序

时间:2019-01-29 13:42:13

标签: python macos process operating-system

我正在尝试使用python获取Mac上打开的应用程序的列表,然后使用mysql将其保存在服务器上...我希望使用子进程,但结果不是我想要的

1 个答案:

答案 0 :(得分:2)

psutils可能会帮助您:

import psutils
list(psutil.process_iter())
[psutil.Process(pid=0, name='kernel_task', started='2019-01-26 16:05:40'),
 psutil.Process(pid=1, name='launchd', started='2019-01-26 16:05:40'),
 psutil.Process(pid=40, name='syslogd', started='2019-01-26 16:05:45'),
 ...]

您还可以自己解析ps aux

import subprocess
subprocess.Popen(['ps','aux'], stdout=subprocess.PIPE).stdout.readlines()
[b'USER               PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND\n',
 b'username           7834   7,9  9,5  7643484 797292   ??  S     4:03     4:32.77 /Applications/Firefox.app/Contents/MacOS/firefox\n',
 b'username           7839   6,9  3,4  5363256 285900   ??  R     4:03     0:11.68 /Applications/iTerm.app/Contents/MacOS/iTerm2\n',
 ...]