首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iTunes苹果事件API

iTunes苹果事件API
EN

Stack Overflow用户
提问于 2010-05-09 13:11:29
回答 2查看 1.9K关注 0票数 2

我想通过Objective控制iTunes (我只是无法在我的OS/X10.6.3系统上正确地安装Python appscript .那将是我的第一选择)。

据我所知,可可上的IPC是基于Apple 的:有没有:

  1. 关于iTunes / Apple的在线文档?
  2. 获取iTunes API的推理机制?

我知道Applescript编辑器/开放字典功能,但我不知道如何将我看到的信息转换为IPC调用。

注意:我已经尝试过通过PyObjC想出一个解决方案,但是我想要的主要功能是跟踪搜索,这是我无法理解的。

免责声明: OS/X超级新手在这里。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-05-09 15:19:58

你考虑过使用脚本桥吗?它内置在操作系统中,并与PyObjC一起工作。没有明确的搜索API,因为搜索是内置到AppleScript (谁的条款)中的,后者在Scripting中映射到NSPredicate。

代码语言:javascript
复制
>>> from Foundation import *
>>> from ScriptingBridge import *
>>> itunes = SBApplication.applicationWithBundleIdentifier_(u"com.apple.itunes")
>>> tracks = itunes.sources()[0].libraryPlaylists()[0].tracks()
<SBElementArray @0x468a630: every ITunesTrack of ITunesLibraryPlaylist 0 of ITunesSource 0 of application "iTunes" (157)>
>>> predicate = NSPredicate.predicateWithFormat_(u'artist == "Pink Floyd"')
>>> tracks.filteredArrayUsingPredicate_(predicate)
<SBElementArray @0x457b6c0: ITunesTrack whose 'cmpd'{ 'relo':'=   ', 'obj1':'obj '{ 'want':'prop', 'from':'exmn'($$), 'form':'prop', 'seld':'pArt' }, 'obj2':'utxt'("Pink Floyd") } of ITunesLibraryPlaylist 0 of ITunesSource 0 of application "iTunes" (157)>

另外,如果您是AppleScript新手,我强烈推荐脚本调试器的字典探险家

票数 11
EN

Stack Overflow用户

发布于 2010-05-09 21:43:50

如果您对py-appscript有问题,请联系作者(那将是我)来排除它。包含有关所使用的Python安装、Xcode版本的信息,以及问题是特定于appscript还是影响到所有第三方模块或具有C扩展的第三方模块。另外,如果您使用的是python.org框架构建,而不是内置的Python,请确保安装了可选的OSX10.4SDK。

API文档可通过OS的AppleScript编辑器(文件>开放字典)、appscript的ASDictionary或其他第三方编辑器获得。如果安装了ASDictionary,还可以使用appscript的内置帮助()方法以交互方式浏览字典。

但是,众所周知,脚本应用程序的API文档是不够的,因此也需要对AppleScript的一般工作方式以及应用程序脚本的工作方式有一个很好的了解。苹果自己的AppleScript语言指南描述了所涉及的各种功能,但并没有提到如何将它们实际使用;如果你愿意存点钱的话,有几本好书可供阅读(免责声明:我只是自己写了一本)。

并期望通过在线文章、讨论论坛和现有脚本进行大量挖掘,寻找线索。道格的AppleScripts for iTunes是一个很好的iTunes脚本来源。当然,它们是用AppleScript编写的,但其中许多都可以在AppleScript编辑器中阅读,因此是一个很好的提示源,如果您使用appscript,您可以使用ASTranslate从AppleScript转换为appscript语法,作为编写自己的语法的起点。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2797703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档