Pythonで次のような通知バナー(トースト通知)を簡単に出せます。
これがPythonでできるとなると、単純に便利ですよね。
Pythonは、機械学習や自動処理などで利用されることが多いです。
そのような場合、処理の進捗が気になります。
その進捗状況が、通知バナーで表示されれば嬉しくないですか?
もちろん、通知する必要のある情報は進捗状況だけではないでしょう。
監視アプリがアラートを通知することにも利用できるはずです。
他にも、バナー通知の効果的な使い方はあるでしょう。
Plyerをインストールすれば、そんなバナー通知をPythonで簡単に実現できるのです。
本記事の内容
- Plyerとは?
- Plyerのシステム要件
- Plyerのインストール
- Plyerの動作確認
それでは、上記に沿って解説していきます。
Plyerとは?
Plyerとは、ハードウェアやプラットフォームの機能にアクセスするためのPythonライブラリです。
Plyerでアクセス可能な各OS毎のハードウェアやプラットフォームは以下。
バナー通知は、上記における「Notifications」に該当します。
「Notifications」へのアクセスにより、バナー通知を実現しています。
また、iOSに関してはバナー通知が不可だとわかります。
今回のバナー通知は、主にデスクトップを想定しています。
そのため、今回の検証では影響がありません。
以上、Plyerについての説明でした。
次は、Plyerのシステム要件を確認します。
Plyerのシステム要件
現時点(2021年4月)でのPlyerの最新バージョンは、2.0.0となります。
この最新バージョンは、2020年11月10日にリリースされています。
サポートOSに関しては、以下を含むクロスプラットフォーム対応です。
- Windows
- macOS
- Linux
- Android
- iOS
Pythonが動けば、OSは問わないようです。
ただ、アクセスできるハードウェアやプラットフォームはOS毎に異なります。
サポート対象となるPythonのバージョンは、公式な記載がありません。
setup.pyには、以下のように記載されています。
これを見る限りでは、Pythonのバージョンは問わないようです。
なお、私は以下のバージョンで検証しています。
>python -V Python 3.9.1
以上、Plyerのシステム要件の説明でした。
次は、Plyerのインストールしていきます。
Plyerのインストール
最初に、現状のインストール済みパッケージを確認しておきます。
>pip list Package Version ---------- ------- pip 21.0.1 setuptools 54.2.0
次にするべきことは、pip自体の更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。
python -m pip install --upgrade pip
では、Plyerのインストールです。
Plyerのインストールは、以下のコマンドとなります。
pip install plyer
インストールは、一瞬で終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。
>pip list Package Version ---------- ------- pip 21.0.1 plyer 2.0.0 setuptools 54.2.0
plyer以外にはパッケージが、インストールされていません。
ただし、Plyerは以下のライブラリを利用します。
OS | 依存ライブラリ |
iOS | pyobjus |
macOS | pyobjus |
Android | pyjnius |
OS毎に依存するライブラリが異なります。
したがって、setup.pyには次のように記載されています。
For MacOS or iOS install additional dependency PyOBJus:: pip install https://github.com/kivy/pyobjus/zipball/master For Android install additional dependency PyJNIus:: pip install https://github.com/kivy/pyjnius/zipball/master
該当するOSの場合には、個別でパッケージのインストールが必要になります。
WindowsとLinuxは、追加でパッケージをインストールする必要はありません。
以上、Plyerのインストールの説明でした。
最後に、Plyerの動作確認を行います。
Plyerの動作確認
冒頭のバナー通知は、次のコードで動かしています。
from plyer import notification notification.notify( title="Pythonで通知", message="ここにメッセージを書きます", app_name="アプリの名前", app_icon="python.ico", timeout=10 )
実行した結果を再度載せておきます。
コードを結果と比較すれば、説明は不要でしょう。
ただ、app_iconに関して説明しておきます。
Windowsの場合、app_iconにはico画像を指定しなければなりません。
Windowsでアイコンを表示する際には、この点に注意です。
以上、Plyerの動作確認でした。