2021年3月23日火曜日

WnckとPythonを使用して全ウインドウのプロセスIDを取得する

WnckとPythonを使用して全ウインドウのプロセスIDを取得するには、以下のサンプルコードのようにデフォルトスクリーンを取得後、force_updateを実行してget_windows()メソッドで全ウインドウを取得します。
その後、各ウインドウのget_pid()メソッドでプロセスIDを取得します。

サンプルコード

以下のサンプルコードを保存・実行します。
import gi
gi.require_version('Gtk', '3.0')
gi.require_version('Wnck', '3.0')
from gi.repository import Gtk, Wnck

screen = Wnck.Screen.get_default()
screen.force_update()
windows = screen.get_windows()
for window in windows:
  print("{} - {}".format(window.get_pid(),window.get_name()))

・動作確認環境
Ubuntu 20.04/Raspberry Pi OS(Raspbian Buster)

Wnckのインストール方法

以下のコマンドを実行します。
sudo apt-get -y install python3-gi gir1.2-wnck-3.0

関連項目

WnckとPythonでのワークスペース・ウインドウの情報取得・操作まとめ

0 件のコメント:

コメントを投稿