我通过COM接口使用pywin32使用python自动化excel。我想把我的脚本移植到mac。这有可能发生吗?我意识到我不能在mac上使用COM,并且xlutils python模块将无法工作(因为我需要复制图形等)。还有什么我可以用的吗?
答案 0 :(得分:1)
不幸的是,appscript的开发已经停止,
我不知道AppleScript的开发已经停止。你的来源是什么?
据我所知,AppleScript仍然保持着未来并且运作良好。
“AppleScript”脚本语言与应用程序间通信技术(IAC)之间存在区别:“AppleEvents”
您可以在Mac上的以下位置找到AppleScript Editor.app:
/ Applications / Utilities / AppleScript Editor.app
打开AppleScript Editor.app,然后从“文件”菜单中选择:“打开字典...”
然后选择“Excel.app”
这将打开Excel的Apple Event词典。您将能够看到Excel for Apple Events支持的“名词”和“动词”和“属性”。
AppleScript 可以用于通过Apple Events向Excel发送命令,但其他脚本语言也是如此。
如果我是你,我会考虑制作一个抽象类的Excel和两个具体的子类,一个使用Windows版本的Windows代码,另一个使用Mac版Excel可能需要的Apple事件代码。
请参阅:关于Apple Events的维基百科文章: http://en.wikipedia.org/wiki/Apple_events
这真的是Apple Events - 而不是您可能想要使用的AppleScript,但您也可以查看以下文章:
另见:关于AppleScript的维基百科文章: http://en.wikipedia.org/wiki/AppleScript
---编辑---
我认为苹果正在减少对AppleScript的支持的误解来自AppleScript Studio已经停产的事实,但它被替换为同样好或更好的东西。现在,您可以使用AppleScript在XCode中开发成熟的Mac应用程序。此外,AppleScript还可以用于Automator工作流程,在XCode中用于构建Automator操作,AppleScript编辑器中所有这些都是由Apple在最新版本的OS X(Mountain Lion 10.8.4)和最新版本的XCode(版本4.6.2)
所以AppleScript仍然是一个可行的选择,尽管OP正在询问Python解决方案。 Apple事件可从Python获得。
答案 1 :(得分:0)
目前唯一可行的解决方案是appscript,它是一个允许在python(和ruby)中编写AppleScript宏的模块。不幸的是,appscript的开发已经停止,但是现在它仍然运行良好。