Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

python psutil psutil.get_process_list() error

Tags:

python

psutil

Im trying to do some things with python psutil but get a strange error.

procs = psutil.get_process_list()

Gets me the following error:

AttributeError: 'module' object has no attribute 'get_process_list'

The only thing i found about it was this: https://github.com/giampaolo/psutil/issues/524

But no real solution besides pasting it to another directory (which I tried but is not working for me). Does anyone has a clue why I get this error?

like image 655
Merijndk Avatar asked Jul 04 '15 04:07

Merijndk


2 Answers

After checking the documentation here , I do not see a get_process_list() function in psutil, it has been deprecated according to this .

Maybe you should try the function - process_iter() - documentation here

It yields an iterator that would return all the processes in the system as Process class objects.

You can then use list(..) to convert them to a list (If list is what you really want) , or directly use the iterator in a for loop, if you just want to iterate over them (If you just want to iterate over them one by one, converting to list would be an unnecessary overhead).

Example -

for proc in psutil.process_iter():
    <do your logic>

Or if you want the list -

procs = list(psutil.process_iter())
like image 86
Anand S Kumar Avatar answered Oct 03 '22 22:10

Anand S Kumar


According to HISTORY.rst,

#273: psutil.get_process_list() is deprecated.

Use psutil.process_iter() instead:

procs = list(psutil.process_iter())
like image 22
falsetru Avatar answered Oct 03 '22 22:10

falsetru