繁体   English   中英

从Python脚本获取macOS上所有窗口标题的列表

[英]Obtain list of all window titles on macOS from a Python script

我希望能够从Python脚本获取macOS上所有窗口标题的字符串列表。 在Windows上,有一个win32 api(enumWindows()函数)可以做到这一点。 我想要等效的macOS。

这可能吗? 我假设我需要使用pyobjc。

以下脚本基于Mark Setchell的注释,并打印应用程序名称和窗口名称(使用Python 3.7):

import Quartz

windows = Quartz.CGWindowListCopyWindowInfo(Quartz.kCGWindowListExcludeDesktopElements|Quartz.kCGWindowListOptionOnScreenOnly,Quartz.kCGNullWindowID);

for window in windows:
    print(f"{window[Quartz.kCGWindowOwnerName]}: {window.get(Quartz.kCGWindowName, '<no name>')}")

请注意,窗口可能没有名称,因此使用“ get”方法来访问窗口名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM