Python から Windows、Linux、Mac でマウスとキーボードのイベントを監視する方法を探しています。
私のアプリケーションはタイムトラッカーです。私はその出来事を調べているのではなく、それが起こった時間を記録しているだけです。一定時間、たとえば 10 分間イベントがない場合、ユーザーが離れたと見なして現在のプロジェクトを停止します。
ユーザーが戻ってきたとき (イベントが再び発生したとき)、私はしばらく待ちます (清掃員やペット、地震によってトリガーされないようにします)。イベントが長期間にわたって持続する場合、ユーザーが戻ってきたと想定し、現在のプロジェクト (会議など) または「休憩」に時間間隔を追加することを選択できる小さな非アクティブ ウィンドウをポップアップ表示します。別のプロジェクト。
pyHookを使用して Windows のキーロガーを解決しました。
Linux では解決策を見つけましたが、気に入りません。/etc/input ですべてのデバイス ノードを監視し、イベントが発生するたびに /var または /tmp のどこかでタイムスタンプを更新できます。2 つの欠点があります。1. タイム トラッカーを実行しているユーザーからのイベントかどうかわかりません。2. この小さなプログラムは root として実行する必要があります (良くない)。
Macでは、まだわかりません。
質問:
Linux でイベント デバイスを監視するよりも、ユーザーがイベントを作成しているかどうかを知る良い方法はありますか?
Macでそれを行う方法の指針はありますか?