CPUやメモリの使用率をPythonで確認できるのを知ってますか?
それも、WindowsやLinuxの違いを気にすることなく。
もちろん、WindowsとmacOSでの区別も必要ありません。
同じコードを書くだけで、それぞれの使用率を数値で取得できるのです。
地味にスゴイと思いませんか?
この地味にスゴイことを可能にするのが、psutilライブラリです。
本記事の内容
- psutilとは?
- psutilのシステム要件
- psutilのインストール
- psutilの動作確認
それでは、上記に沿って解説していきます。
psutilとは?
psutilは、実行中のプロセスやシステムの利用状況の情報をPythonで取得するためのライブラリです。
ここで言うシステムとは、以下。
- CPU
- メモリ
- ディスク
- ネットワーク
- センサー
上記システムの利用状況をPythonで取得できます。
また、psutilの最初バージョンとなる0.1.0のリリースは、2009年です。
そこから、頻繁に更新されています。
psutilの最新バージョンは、5.8.0となります。
この最新バージョンは、2020年12月19日にリリースされています。
次は、psutilのシステム要件を確認していきます。
psutilのシステム要件
psutilは、クロスプラットフォーム対応のライブラリです。
公式には、以下のOSをサポートしています。
- Linux
- Windows
- macOS
- FreeBSD, OpenBSD, NetBSD
- Sun Solaris
- AIX
また、サポートしているPythonのバージョンは以下。
- Python 2.6
- Python 2.7
- Python 3.4 以降
以上より、基本的にpsutilはどこでも動くということですね。
ただし、AndroidやiOSは未対応となります。
以上、psutilのシステム要件でした。
特に注意すべき点はありません。
では、psutilをインストールしていきましょう。
psutilのインストール
最初に、現状のインストール済みパッケージを確認しておきます。
>pip list Package Version ---------- ------- pip 20.3.3 setuptools 51.1.2
次にするべきことは、pip自体の更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。
python -m pip install --upgrade pip
では、psutilのインストールです。
psutilのインストールは、以下のコマンドとなります。
pip install psutil
インストールは一瞬で完了です。
では、どんなパッケージがインストールされたのかを確認しましょう。
>pip list Package Version ---------- ------- pip 20.3.3 psutil 5.8.0 setuptools 51.1.2
最新バージョンのpsutil 5.8.0がインストールされています。
psutilには、他に依存するライブラリがありません。
よって、psutilは導入しやすいライブラリと言えます。
最後に、psutilの動作確認を行いましょう。
psutilの動作確認
メモリの使用率を確認するプログラムです。
import psutil memory_state = psutil.virtual_memory() print(memory_state.percent)
上記を実行すると、メモリの使用率が表示されます。
Windowsなら、タスクマネージャーでメモリ使用率を確認できます。
プログラムの実行結果 59.7
Linux(Ubuntu)なら、freeコマンドでメモリ使用率(計算必要)を確認できます。
プログラムの実行結果 5.6
なお、WindowsとUbuntuで全く同じPythonのコードを利用しています。
個人的には、これが地味にスゴイと感じます。
ここまで確認できれば、問題ありません。
あと、プロセス監視が使えそうです。
バッチ処理の二重起動などを簡単に制御できそうです。
それに関しては、また別の記事で解説していきます。