1

假设我设法在 Applescript 编辑器中为 iTunes 打开字典:

替代文字

如何使用 Python 和 pyobjc 访问“搜索”命令?

我知道我可以使用以下方式获取 iTunes 应用程序:

iTunes = SBApplication.applicationWithBundleIdentifier_("com.apple.iTunes")

但是在我对其进行操作之后dir,我在返回的字典中看不到搜索命令。请帮忙!

4

1 回答 1

3

使用appscript而不是 Scripting Bridge。有适用于 Python、Ruby 和 Objective-C 的版本。与 Scripting Bridge 不同,appscript 旨在与 Apple Events 一起使用,而不是让它假装它不是。它也更加灵活且错误更少。作为奖励,您不必通过 PyObjC。

appscript 文档很好,值得一读。您可以安装ASTranslate,它将 AppleScript 脚本转换为上述任何语言的 appscript 代码。当我做一些棘手的事情时,我经常在(Apple)脚本编辑器中编写它,然后使用 ASTranslate 转换为 Python。还有 ASDictionary,它生成 HTML 格式的字典版本,格式为 appscript 语言;我不怎么使用它,因为我发现使用 Script Editor 进行试验更容易。(但是,如果您对 AppleScript 没有太多经验,也许它会是一个更好的选择。)

一些用 Python appscript 控制 iTunes 的例子,你可以看看我写的一些 脚本。

于 2010-05-04T03:24:43.213 回答