在线文档教程

aetools

aetools - OSA客户端支持

aetools模块包含构建Python AppleScript客户端支持的基本功能。它还导入和重新导出aetypesaepack模块的核心功能。通过gensuitemodule导入相关部分生成的存根包aetools,通常你不需要自己导入它。这是一个例外,当你不能使用生成的套件包并需要更低级别的脚本访问时。

aetools模块本身使用由提供的AppleEvent支持Carbon.AE模块。这有一个缺点:您需要访问窗口管理器,请参阅使用GUI运行脚本一节以了解详细信息。未来版本中可能会取消此限制。

注意

此模块已在Python 3.x中删除。

aetools模块定义了以下功能:

aetools.packevent(ae, parameters, attributes)

将参数和属性存储在预先创建的Carbon.AE.AEDesc对象中。parameters并且attributes是将4个字符的OSA参数键映射到Python对象的字典。对象使用包装aepack.pack()

aetools.unpackevent(ae[, formodulename])

递归地将Carbon.AE.AEDesc事件解包到Python对象。该函数返回参数字典和属性字典。该formodulename参数被生成的存根控制包用来控制查找AppleScript类的位置。

aetools.keysubst(arguments, keydict)

根据keydict中指定的映射,通过用四个字符的OSA键替换作为Python标识符的键,将Python关键字参数字典参数转换为packevent所需的格式。 由生成的套件软件包使用。

aetools.enumsubst(arguments, key, edict)

如果arguments字典包含一个条目,key用于根据字典将该条目的值进行转换edict。这将可读的Python枚举名称转换为OSA 4字符代码。由生成的套件软件包使用。

aetools模块定义了以下类:

class aetools.TalkTo([signature=None, start=0, timeout=0])

用于与应用程序交谈的代理的基类。signature覆盖类属性_signature(通常由子类设置),并且是定义要与之交谈的应用程序的4字符创建者代码。start可以设置为true以启用在类实例化上运行应用程序。timeout可以指定更改在等待AppleEvent回复时使用的默认超时值。

TalkTo._start()

测试应用程序是否正在运行,如果不是,则尝试启动它。

TalkTo.send(code, subcode[, parameters, attributes])

为OSA指定代码,子代码(通常为4个字符的字符串)的动词创建AppleEvent Carbon.AE.AEDesc,将参数和属性打包,发送到目标应用程序,等待答复,解压 与unpackevent的回复并返回响应appleevent,解压后的返回值作为字典和返回属性。