Pythonでポップアップ通知を作成する方法は、用途や環境(WindowsかMacかLinuxか、GUIかCLIか)によって異なります。
ここでは 主要な3つの方法 を、環境ごとの対応も含めて詳しく解説します。
目次
方法1:plyer
ライブラリ(クロスプラットフォーム対応)
plyer
はシンプルで、Windows / macOS / Linux すべてに対応しています。
インストール
pip install plyer
使用例(基本の通知)
from plyer import notification
notification.notify(
title='お知らせ',
message='これはポップアップ通知のサンプルです',
timeout=5 # 秒数(5秒間表示)
)
特徴
- タイトル・本文・表示時間を指定可能。
- バックグラウンドアプリでも通知可能。
- シンプルな用途に最適。
方法2:Windows専用 win10toast
Windows 10 以降専用ですが、ネイティブ通知を簡単に出せます。
インストール
pip install win10toast
使用例
from win10toast import ToastNotifier
toaster = ToastNotifier()
toaster.show_toast("通知タイトル", "これはWindows用の通知です", duration=5)
特徴
- Windowsに完全準拠の通知。
- トースト通知として表示される。
icon_path
で.ico
ファイルを指定できる。
方法3:macOS専用 osascript
経由でAppleScriptを呼び出す
Pythonから osascript
を実行することでmacOSの通知を出せます。
使用例
import os
title = "通知タイトル"
message = "これはmacOSの通知です"
os.system(f'''osascript -e 'display notification "{message}" with title "{title}"' ''')
特徴
- 標準のmacOS通知が使える。
- 非常に軽量で依存なし。
osascript
はmacOSに標準搭載。
方法4:GUIライブラリ(tkinter
やPyQt
)を使って独自のポップアップ
tkinter
の使用例(簡易ポップアップ)
import tkinter as tk
from tkinter import messagebox
root = tk.Tk()
root.withdraw() # メインウィンドウを非表示に
messagebox.showinfo("お知らせ", "これはTkinterのポップアップです")
特徴
- GUIアプリと統合できる。
- ボタン付きダイアログにも対応。
- 見た目は古風だが、標準ライブラリで使える。
ポップアップ通知を選ぶときのチェックリスト
目的 / 条件 | 推奨方法 |
---|---|
クロスプラットフォーム対応が必要 | plyer |
Windows専用通知を使いたい | win10toast |
macOS専用で軽量に作りたい | osascript 経由 |
GUIアプリに組み込みたい | tkinter / PyQt |
補足:日本語文字化け対策
Windows環境では、コンソールや通知で 日本語が文字化け する場合があります。
エディタや端末のエンコーディングをUTF-8に設定するか、通知内容を英語にするのも一つの対処です。
まとめ

方法 | OS対応 | 長所 | 短所 |
---|---|---|---|
plyer | Win/Mac/Linux | 簡単・軽量で汎用的 | カスタマイズ性は低め |
win10toast | Windowsのみ | Windowsネイティブ通知 | 他OSでは動作不可 |
osascript | macOSのみ | 非常に軽くてmacと相性◎ | 他OSでは使えない |
tkinter | 全OS | GUIアプリと統合できる | 古風な見た目・通知用途には冗長 |
以上、Pythonでポップアップ通知を作成する方法についてでした。
最後までお読みいただき、ありがとうございました。