4

我对编程很陌生,但我在大学课程中学习了一些基本的 Python 编程。

我正在寻找一种在 Mac 应用程序(主要是 iTunes)上运行非常简单的 Python 脚本的方法,以代替 AppleScript。我已经阅读了使用 AppScript for Python 的内容,但它不再处于开发阶段,并且从 iTunes 10.6.3 开始就被破坏了。

在我的 Windows 计算机上,我可以使用名为 PyWin32 的模块轻松地使用 Python 编写应用程序脚本。然而,自从切换到 Mac 后,我一直无法找到一个好的替代方案。这是我在 Windows 上使用的示例脚本,只是为了说明我想使用的脚本的简单性:

from win32com.client import Dispatch
iTunes = Dispatch("iTunes.Application")

selected_tracks = iTunes.SelectedTracks
track_count = selected_tracks.Count

for i in range(1, track_count + 1):
    selected_tracks.Item(i).TrackNumber = i
    selected_tracks.Item(i).TrackCount = track_count

如您所见,我的脚本需求非常基本,我不需要 AppScript 之类的任何高级事件处理功能。我计划最终学习 AppleScript,但现在我仍然对 Python 感觉最舒服。有没有人有什么建议?

非常感谢!

4

3 回答 3

1

一种可能性是通过 subprocess 模块使用osascript。然后,您可以访问少量 AppleScript,例如您需要的应​​用程序属性,但将逻辑保留在 Python 中。通常,您可以找到所需 AppleScript 参考表单的在线示例,这样就无需深入研究 AppleScript。

于 2012-12-13T08:37:17.697 回答
1

您需要将Scripting BridgePyObjC一起使用。它有很多内容,但是这些链接将使您入门。

于 2012-12-13T04:24:09.797 回答
0

当你开始学习 AppleScript 时;)

tell application "iTunes"
    set selected_tracks to selection
    set track_count to count of selected_tracks
    repeat with i from 1 to track_count
        set a_track to item i of selected_tracks
        set a_track's track number to i
        set a_track's track count to track_count
    end repeat
end tell
于 2012-12-13T05:36:21.523 回答