Skip to main content

Cross-platform lib for process and system monitoring in Python.

Project description

Downloads Github stars Github forks Contributors Linux tests (Travis) Windows tests (Appveyor) Test coverage (coverall.io) Documentation Status Latest version Supported Python versions License

Summary

psutil (process and system utilities) is a cross-platform library for retrieving information on running processes and system utilization (CPU, memory, disks, network, sensors) in Python. It is useful mainly for system monitoring, profiling and limiting process resources and management of running processes. It implements many functionalities offered by UNIX command line tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap. psutil currently supports the following platforms:

  • Linux

  • Windows

  • macOS

  • FreeBSD, OpenBSD, NetBSD

  • Sun Solaris

  • AIX

…both 32-bit and 64-bit architectures. Supported Python versions are 2.6, 2.7 and 3.4+. PyPy is also known to work.

Author

psutil was created and is maintained by Giampaolo Rodola and it received many useful contributions over the years. A lot of time and effort went into making psutil as it is right now. If you feel psutil is useful to you or your business and want to support its future development consider making a small donation:

Donate via PayPal

Don’t want to donate money? Then maybe you could write me a recommendation on Linkedin.

Example applications

https://github.com/giampaolo/psutil/blob/master/docs/_static/procinfo-small.png https://github.com/giampaolo/psutil/blob/master/docs/_static/top-small.png
https://github.com/giampaolo/psutil/blob/master/docs/_static/procsmem-small.png https://github.com/giampaolo/psutil/blob/master/docs/_static/pmap-small.png

Also see scripts directory and doc recipes.

Projects using psutil

psutil has roughly the following monthly downloads:

Downloads

There are over 10.000 open source projects on github which depend from psutil. Here’s some I find particularly interesting:

Portings

Example usages

This represents pretty much the whole psutil API.

CPU

>>> import psutil
>>>
>>> psutil.cpu_times()
scputimes(user=3961.46, nice=169.729, system=2150.659, idle=16900.540, iowait=629.59, irq=0.0, softirq=19.42, steal=0.0, guest=0, nice=0.0)
>>>
>>> for x in range(3):
...     psutil.cpu_percent(interval=1)
...
4.0
5.9
3.8
>>>
>>> for x in range(3):
...     psutil.cpu_percent(interval=1, percpu=True)
...
[4.0, 6.9, 3.7, 9.2]
[7.0, 8.5, 2.4, 2.1]
[1.2, 9.0, 9.9, 7.2]
>>>
>>> for x in range(3):
...     psutil.cpu_times_percent(interval=1, percpu=False)
...
scputimes(user=1.5, nice=0.0, system=0.5, idle=96.5, iowait=1.5, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0)
scputimes(user=1.0, nice=0.0, system=0.0, idle=99.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0)
scputimes(user=2.0, nice=0.0, system=0.0, idle=98.0, iowait=0.0, irq=0.0, softirq=0.0, steal=0.0, guest=0.0, guest_nice=0.0)
>>>
>>> psutil.cpu_count()
4
>>> psutil.cpu_count(logical=False)
2
>>>
>>> psutil.cpu_stats()
scpustats(ctx_switches=20455687, interrupts=6598984, soft_interrupts=2134212, syscalls=0)
>>>
>>> psutil.cpu_freq()
scpufreq(current=931.42925, min=800.0, max=3500.0)
>>>
>>> psutil.getloadavg()  # also on Windows (emulated)
(3.14, 3.89, 4.67)

Memory

>>> psutil.virtual_memory()
svmem(total=10367352832, available=6472179712, percent=37.6, used=8186245120, free=2181107712, active=4748992512, inactive=2758115328, buffers=790724608, cached=3500347392, shared=787554304)
>>> psutil.swap_memory()
sswap(total=2097147904, used=296128512, free=1801019392, percent=14.1, sin=304193536, sout=677842944)
>>>

Disks

>>> psutil.disk_partitions()
[sdiskpart(device='/dev/sda1', mountpoint='/', fstype='ext4', opts='rw,nosuid'),
 sdiskpart(device='/dev/sda2', mountpoint='/home', fstype='ext, opts='rw')]
>>>
>>> psutil.disk_usage('/')
sdiskusage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)
>>>
>>> psutil.disk_io_counters(perdisk=False)
sdiskio(read_count=719566, write_count=1082197, read_bytes=18626220032, write_bytes=24081764352, read_time=5023392, write_time=63199568, read_merged_count=619166, write_merged_count=812396, busy_time=4523412)
>>>

Network

>>> psutil.net_io_counters(pernic=True)
{'eth0': netio(bytes_sent=485291293, bytes_recv=6004858642, packets_sent=3251564, packets_recv=4787798, errin=0, errout=0, dropin=0, dropout=0),
 'lo': netio(bytes_sent=2838627, bytes_recv=2838627, packets_sent=30567, packets_recv=30567, errin=0, errout=0, dropin=0, dropout=0)}
>>>
>>> psutil.net_connections()
[sconn(fd=115, family=<AddressFamily.AF_INET: 2>, type=<SocketType.SOCK_STREAM: 1>, laddr=addr(ip='10.0.0.1', port=48776), raddr=addr(ip='93.186.135.91', port=80), status='ESTABLISHED', pid=1254),
 sconn(fd=117, family=<AddressFamily.AF_INET: 2>, type=<SocketType.SOCK_STREAM: 1>, laddr=addr(ip='10.0.0.1', port=43761), raddr=addr(ip='72.14.234.100', port=80), status='CLOSING', pid=2987),
 ...]
>>>
>>> psutil.net_if_addrs()
{'lo': [snicaddr(family=<AddressFamily.AF_INET: 2>, address='127.0.0.1', netmask='255.0.0.0', broadcast='127.0.0.1', ptp=None),
        snicaddr(family=<AddressFamily.AF_INET6: 10>, address='::1', netmask='ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff', broadcast=None, ptp=None),
        snicaddr(family=<AddressFamily.AF_LINK: 17>, address='00:00:00:00:00:00', netmask=None, broadcast='00:00:00:00:00:00', ptp=None)],
 'wlan0': [snicaddr(family=<AddressFamily.AF_INET: 2>, address='192.168.1.3', netmask='255.255.255.0', broadcast='192.168.1.255', ptp=None),
           snicaddr(family=<AddressFamily.AF_INET6: 10>, address='fe80::c685:8ff:fe45:641%wlan0', netmask='ffff:ffff:ffff:ffff::', broadcast=None, ptp=None),
           snicaddr(family=<AddressFamily.AF_LINK: 17>, address='c4:85:08:45:06:41', netmask=None, broadcast='ff:ff:ff:ff:ff:ff', ptp=None)]}
>>>
>>> psutil.net_if_stats()
{'lo': snicstats(isup=True, duplex=<NicDuplex.NIC_DUPLEX_UNKNOWN: 0>, speed=0, mtu=65536),
 'wlan0': snicstats(isup=True, duplex=<NicDuplex.NIC_DUPLEX_FULL: 2>, speed=100, mtu=1500)}
>>>

Sensors

>>> import psutil
>>> psutil.sensors_temperatures()
{'acpitz': [shwtemp(label='', current=47.0, high=103.0, critical=103.0)],
 'asus': [shwtemp(label='', current=47.0, high=None, critical=None)],
 'coretemp': [shwtemp(label='Physical id 0', current=52.0, high=100.0, critical=100.0),
              shwtemp(label='Core 0', current=45.0, high=100.0, critical=100.0)]}
>>>
>>> psutil.sensors_fans()
{'asus': [sfan(label='cpu_fan', current=3200)]}
>>>
>>> psutil.sensors_battery()
sbattery(percent=93, secsleft=16628, power_plugged=False)
>>>

Other system info

>>> import psutil
>>> psutil.users()
[suser(name='giampaolo', terminal='pts/2', host='localhost', started=1340737536.0, pid=1352),
 suser(name='giampaolo', terminal='pts/3', host='localhost', started=1340737792.0, pid=1788)]
>>>
>>> psutil.boot_time()
1365519115.0
>>>

Process management

>>> import psutil
>>> psutil.pids()
[1, 2, 3, 4, 5, 6, 7, 46, 48, 50, 51, 178, 182, 222, 223, 224, 268, 1215, 1216, 1220, 1221, 1243, 1244,
 1301, 1601, 2237, 2355, 2637, 2774, 3932, 4176, 4177, 4185, 4187, 4189, 4225, 4243, 4245, 4263, 4282,
 4306, 4311, 4312, 4313, 4314, 4337, 4339, 4357, 4358, 4363, 4383, 4395, 4408, 4433, 4443, 4445, 4446,
 5167, 5234, 5235, 5252, 5318, 5424, 5644, 6987, 7054, 7055, 7071]
>>>
>>> p = psutil.Process(7055)
>>> p
psutil.Process(pid=7055, name='python', started='09:04:44')
>>> p.name()
'python'
>>> p.exe()
'/usr/bin/python'
>>> p.cwd()
'/home/giampaolo'
>>> p.cmdline()
['/usr/bin/python', 'main.py']
>>>
>>> p.pid
7055
>>> p.ppid()
7054
>>> p.children(recursive=True)
[psutil.Process(pid=29835, name='python2.7', started='11:45:38'),
 psutil.Process(pid=29836, name='python2.7', started='11:43:39')]
>>>
>>> p.parent()
psutil.Process(pid=4699, name='bash', started='09:06:44')
>>> p.parents()
[psutil.Process(pid=4699, name='bash', started='09:06:44'),
 psutil.Process(pid=4689, name='gnome-terminal-server', started='0:06:44'),
 psutil.Process(pid=1, name='systemd', started='05:56:55')]
>>>
>>> p.status()
'running'
>>> p.username()
'giampaolo'
>>> p.create_time()
1267551141.5019531
>>> p.terminal()
'/dev/pts/0'
>>>
>>> p.uids()
puids(real=1000, effective=1000, saved=1000)
>>> p.gids()
pgids(real=1000, effective=1000, saved=1000)
>>>
>>> p.cpu_times()
pcputimes(user=1.02, system=0.31, children_user=0.32, children_system=0.1)
>>> p.cpu_percent(interval=1.0)
12.1
>>> p.cpu_affinity()
[0, 1, 2, 3]
>>> p.cpu_affinity([0, 1])  # set
>>> p.cpu_num()
1
>>>
>>> p.memory_info()
pmem(rss=10915840, vms=67608576, shared=3313664, text=2310144, lib=0, data=7262208, dirty=0)
>>> p.memory_full_info()  # "real" USS memory usage (Linux, macOS, Win only)
pfullmem(rss=10199040, vms=52133888, shared=3887104, text=2867200, lib=0, data=5967872, dirty=0, uss=6545408, pss=6872064, swap=0)
>>> p.memory_percent()
0.7823
>>> p.memory_maps()
[pmmap_grouped(path='/lib/x8664-linux-gnu/libutil-2.15.so', rss=32768, size=2125824, pss=32768, shared_clean=0, shared_dirty=0, private_clean=20480, private_dirty=12288, referenced=32768, anonymous=12288, swap=0),
 pmmap_grouped(path='/lib/x8664-linux-gnu/libc-2.15.so', rss=3821568, size=3842048, pss=3821568, shared_clean=0, shared_dirty=0, private_clean=0, private_dirty=3821568, referenced=3575808, anonymous=3821568, swap=0),
 pmmap_grouped(path='[heap]',  rss=32768, size=139264, pss=32768, shared_clean=0, shared_dirty=0, private_clean=0, private_dirty=32768, referenced=32768, anonymous=32768, swap=0),
 pmmap_grouped(path='[stack]', rss=2465792, size=2494464, pss=2465792, shared_clean=0, shared_dirty=0, private_clean=0, private_dirty=2465792, referenced=2277376, anonymous=2465792, swap=0),
 ...]
>>>
>>> p.io_counters()
pio(read_count=478001, write_count=59371, read_bytes=700416, write_bytes=69632, read_chars=456232, write_chars=517543)
>>>
>>> p.open_files()
[popenfile(path='/home/giampaolo/svn/psutil/setup.py', fd=3, position=0, mode='r', flags=32768),
 popenfile(path='/var/log/monitd', fd=4, position=235542, mode='a', flags=33793)]
>>>
>>> p.connections()
[pconn(fd=115, family=<AddressFamily.AF_INET: 2>, type=<SocketType.SOCK_STREAM: 1>, laddr=addr(ip='10.0.0.1', port=48776), raddr=addr(ip='93.186.135.91', port=80), status='ESTABLISHED'),
 pconn(fd=117, family=<AddressFamily.AF_INET: 2>, type=<SocketType.SOCK_STREAM: 1>, laddr=addr(ip='10.0.0.1', port=43761), raddr=addr(ip='72.14.234.100', port=80), status='CLOSING')]
>>>
>>> p.num_threads()
4
>>> p.num_fds()
8
>>> p.threads()
[pthread(id=5234, user_time=22.5, system_time=9.2891),
 pthread(id=5237, user_time=0.0707, system_time=1.1)]
>>>
>>> p.num_ctx_switches()
pctxsw(voluntary=78, involuntary=19)
>>>
>>> p.nice()
0
>>> p.nice(10)  # set
>>>
>>> p.ionice(psutil.IOPRIO_CLASS_IDLE)  # IO priority (Win and Linux only)
>>> p.ionice()
pionice(ioclass=<IOPriority.IOPRIO_CLASS_IDLE: 3>, value=0)
>>>
>>> p.rlimit(psutil.RLIMIT_NOFILE, (5, 5))  # set resource limits (Linux only)
>>> p.rlimit(psutil.RLIMIT_NOFILE)
(5, 5)
>>>
>>> p.environ()
{'LC_PAPER': 'it_IT.UTF-8', 'SHELL': '/bin/bash', 'GREP_OPTIONS': '--color=auto',
'XDG_CONFIG_DIRS': '/etc/xdg/xdg-ubuntu:/usr/share/upstart/xdg:/etc/xdg',
 ...}
>>>
>>> p.as_dict()
{'status': 'running', 'num_ctx_switches': pctxsw(voluntary=63, involuntary=1), 'pid': 5457, ...}
>>> p.is_running()
True
>>> p.suspend()
>>> p.resume()
>>>
>>> p.terminate()
>>> p.wait(timeout=3)
0
>>>
>>> psutil.test()
USER         PID %CPU %MEM     VSZ     RSS TTY        START    TIME  COMMAND
root           1  0.0  0.0   24584    2240            Jun17   00:00  init
root           2  0.0  0.0       0       0            Jun17   00:00  kthreadd
...
giampaolo  31475  0.0  0.0   20760    3024 /dev/pts/0 Jun19   00:00  python2.4
giampaolo  31721  0.0  2.2  773060  181896            00:04   10:30  chrome
root       31763  0.0  0.0       0       0            00:05   00:00  kworker/0:1
>>>

Further process APIs

>>> import psutil
>>> for proc in psutil.process_iter(attrs=['pid', 'name']):
...     print(proc.info)
...
{'pid': 1, 'name': 'systemd'}
{'pid': 2, 'name': 'kthreadd'}
{'pid': 3, 'name': 'ksoftirqd/0'}
...
>>>
>>> psutil.pid_exists(3)
True
>>>
>>> def on_terminate(proc):
...     print("process {} terminated".format(proc))
...
>>> # waits for multiple processes to terminate
>>> gone, alive = psutil.wait_procs(procs_list, timeout=3, callback=on_terminate)
>>>

Popen wrapper:

>>> import psutil
>>> from subprocess import PIPE
>>> p = psutil.Popen(["/usr/bin/python", "-c", "print('hello')"], stdout=PIPE)
>>> p.name()
'python'
>>> p.username()
'giampaolo'
>>> p.communicate()
('hello\n', None)
>>> p.wait(timeout=2)
0
>>>

Windows services

>>> list(psutil.win_service_iter())
[<WindowsService(name='AeLookupSvc', display_name='Application Experience') at 38850096>,
 <WindowsService(name='ALG', display_name='Application Layer Gateway Service') at 38850128>,
 <WindowsService(name='APNMCP', display_name='Ask Update Service') at 38850160>,
 <WindowsService(name='AppIDSvc', display_name='Application Identity') at 38850192>,
 ...]
>>> s = psutil.win_service_get('alg')
>>> s.as_dict()
{'binpath': 'C:\\Windows\\System32\\alg.exe',
 'description': 'Provides support for 3rd party protocol plug-ins for Internet Connection Sharing',
 'display_name': 'Application Layer Gateway Service',
 'name': 'alg',
 'pid': None,
 'start_type': 'manual',
 'status': 'stopped',
 'username': 'NT AUTHORITY\\LocalService'}

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psutil-5.6.3.tar.gz (435.4 kB view details)

Uploaded Source

Built Distributions

psutil-5.6.3-cp38-cp38-win_amd64.whl (238.0 kB view details)

Uploaded CPython 3.8 Windows x86-64

psutil-5.6.3-cp37-cp37m-win_amd64.whl (234.9 kB view details)

Uploaded CPython 3.7m Windows x86-64

psutil-5.6.3-cp37-cp37m-win32.whl (230.9 kB view details)

Uploaded CPython 3.7m Windows x86

psutil-5.6.3-cp36-cp36m-win_amd64.whl (234.9 kB view details)

Uploaded CPython 3.6m Windows x86-64

psutil-5.6.3-cp36-cp36m-win32.whl (230.9 kB view details)

Uploaded CPython 3.6m Windows x86

psutil-5.6.3-cp35-cp35m-win_amd64.whl (234.9 kB view details)

Uploaded CPython 3.5m Windows x86-64

psutil-5.6.3-cp35-cp35m-win32.whl (230.9 kB view details)

Uploaded CPython 3.5m Windows x86

psutil-5.6.3-cp27-none-win_amd64.whl (230.4 kB view details)

Uploaded CPython 2.7 Windows x86-64

psutil-5.6.3-cp27-none-win32.whl (226.8 kB view details)

Uploaded CPython 2.7 Windows x86

File details

Details for the file psutil-5.6.3.tar.gz.

File metadata

  • Download URL: psutil-5.6.3.tar.gz
  • Upload date:
  • Size: 435.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3.tar.gz
Algorithm Hash digest
SHA256 863a85c1c0a5103a12c05a35e59d336e1d665747e531256e061213e2e90f63f3
MD5 1bbc1788588cc3c2c461cd98a830ba72
BLAKE2b-256 1cca5b8c1fe032a458c2c4bcbe509d1401dca9dda35c7fc46b36bb81c2834740

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: psutil-5.6.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 238.0 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.4.2 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0b1+

File hashes

Hashes for psutil-5.6.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 12542c3642909f4cd1928a2fba59e16fa27e47cbeea60928ebb62a8cbd1ce123
MD5 c24ecfa469816b721ea5a47cdc21fe70
BLAKE2b-256 a77f0761489b5467af4e97ae3c5a25f24f8662d69a25692d85490c8ea5d52e45

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: psutil-5.6.3-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 234.9 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 028a1ec3c6197eadd11e7b46e8cc2f0720dc18ac6d7aabdb8e8c0d6c9704f000
MD5 4baa46b3dbac29cce4f536c66f083faf
BLAKE2b-256 7c58f5d68ddca37480d8557b8566a20bf6108d7e1c6c9b9208ee0786e0cd012b

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp37-cp37m-win32.whl.

File metadata

  • Download URL: psutil-5.6.3-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 230.9 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 503e4b20fa9d3342bcf58191bbc20a4a5ef79ca7df8972e6197cc14c5513e73d
MD5 0db7a1f383218f2c71c9cea3d7b9d263
BLAKE2b-256 3b922a7fb18054ac12483fb72f281c285d21642ca3d29fc6a06f0e44d4b36d83

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: psutil-5.6.3-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 234.9 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 954f782608bfef9ae9f78e660e065bd8ffcfaea780f9f2c8a133bb7cb9e826d7
MD5 3358b7f37b4b481dae59237ea8b351ca
BLAKE2b-256 8691f15a3aae2af13f008ed95e02292d1a2e84615ff42b7203357c1c0bbe0651

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp36-cp36m-win32.whl.

File metadata

  • Download URL: psutil-5.6.3-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 230.9 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 eba238cf1989dfff7d483c029acb0ac4fcbfc15de295d682901f0e2497e6781a
MD5 e62753ea2662be0900298ed59b325dd0
BLAKE2b-256 280ce41fd3020662487cf92f0c47b09285d7e53c42ee56cdc3ddb03a147cfa5d

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: psutil-5.6.3-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 234.9 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 bc96d437dfbb8865fc8828cf363450001cb04056bbdcdd6fc152c436c8a74c61
MD5 c4168104755a01957b430baca69d2f63
BLAKE2b-256 9086d5ae0eb79cab6acc00d3640a45243e3e0602dc2f7abca29fc2fe6b4819ca

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp35-cp35m-win32.whl.

File metadata

  • Download URL: psutil-5.6.3-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 230.9 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 cf49178021075d47c61c03c0229ac0c60d5e2830f8cab19e2d88e579b18cdb76
MD5 fa5a95c3f871eb342f93a46e84332573
BLAKE2b-256 c2f2d99eaeefb2c0b1f7f9aca679db17f4072d4cc362f40f809157d4e2d273dd

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp27-none-win_amd64.whl.

File metadata

  • Download URL: psutil-5.6.3-cp27-none-win_amd64.whl
  • Upload date:
  • Size: 230.4 kB
  • Tags: CPython 2.7, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp27-none-win_amd64.whl
Algorithm Hash digest
SHA256 b6e08f965a305cd84c2d07409bc16fbef4417d67b70c53b299116c5b895e3f45
MD5 a4e4d8e4fbd324867bbb52239d4ee0fe
BLAKE2b-256 727543047d7df3ea2af2bcd072e63420b8fa240b729c052295f8c4b964335d36

See more details on using hashes here.

File details

Details for the file psutil-5.6.3-cp27-none-win32.whl.

File metadata

  • Download URL: psutil-5.6.3-cp27-none-win32.whl
  • Upload date:
  • Size: 226.8 kB
  • Tags: CPython 2.7, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.8.0a1+

File hashes

Hashes for psutil-5.6.3-cp27-none-win32.whl
Algorithm Hash digest
SHA256 d5350cb66690915d60f8b233180f1e49938756fb2d501c93c44f8fb5b970cc63
MD5 9fd0da7de3c36fba1718af604ef7df61
BLAKE2b-256 da767e445566f2c4363691a98f16df0072c6ba92c7c29b4410ef2df6514c9861

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page