Swift разработан для использования API-интерфейсов программирования MacOS: AppKit, Quartz, CoreFoundation, NSObject и т. Д. c, а не управляемых событиями элементов более высокого уровня OSAX ( open, print, close , document, window, et c), используемый в AppleScript.
Система python (2.7) в комплекте поставляется с pyObj C, что позволяет python использовать то же самое программирование API, которые делает Swift, например, «написание приложений». PyObj C также содержит скриптовый мост для событий и объектов AppleScript. канонический пример кода действительно использует iTunes:
from Foundation import *
from ScriptingBridge import *
iTunes = SBApplication.applicationWithBundleIdentifier_("com.apple.iTunes")
print iTunes.currentTrack().name()
(Обс, это python2, и вам нужно заключить в скобки команду печати. Также лично я не будет import *
всего, так как он очень медленный.)
Вот некоторые другие методы / атрибуты, основанные на словаре сценариев:
iTunes.nextTrack()
iTunes.previousTrack()
iTunes.playpause()
iTunes.fastForward()
iTunes.setShuffleEnabled_(False)
iTunes.currentPlaylist().playOnce_(False)
Системная версия pyObj C очень старый, но сама библиотека все еще находится в стадии разработки. Если вы используете python3, то вам следует установить последнюю версию pyObj C.
FWIW, вы можете запустить некомпилированный Swift как «скрипт» в оболочке .