使用appscript+python來控制Mac下的GUI應用程序

在Mac下,appscript是一個與應用程序通信交互的強大工具。用Python的appscript模塊,可以在不用學習appscript的情況下也能做到與很多應用程序交互的功能。

打開Mac的終端,安裝很簡單:
sudo easy_install appscript

然後運行ipython,先來試一個簡單有趣的例子:

>> import osax
>> sa = osax.OSAX()
>> sa.say("Hello world", using="Victoria")

怎麼樣,你的蘋果說話了吧──打破通常用無聲"Hello world”作爲程序入門的慣例 :)

下面是一個比較實用的例子,調用iTunes播放你喜歡的音樂:

import appscript
iTunes = appscript.app("iTunes")
browserWindows = iTunes.browser_windows()
browserWindow = browserWindows[0]
playList = browserWindow.view()
track = playList.tracks[2]
print "Now playing the 2nd track:"
print "-"*50
print "Name:", track.name()
print "Artist:", track.artist()
print "Genre:", track.genre()
track.play()


保存程序文件play2nd.py,運行情況如下:

$ python play2nd.py
Now playing the 2nd track:
--------------------------------------------------
Name: Rainmaker
Artist: Yanni
Genre: New Age


iTunes開始播放 :)


對於iTunes,我們還可以編寫更多實用的例子:

import appscript
iTunes = appscript.app("iTunes")
browserWindows = iTunes.browser_windows()
browserWindow = browserWindows[0]
playList = browserWindow.view()
for i in range(1,10):
track = playList.tracks[i]
print "-"*50
try:
print "Name:", track.name().encode('utf8')
print "Artist:", track.artist()
print "Genre:", track.genre()
except Exception,e:
pass

該程序的作用是,列出iTunes第一個列表中的前10首音樂。


另外一個工作上比較實用的功能是,appscript+python還可以與FileMakerPro進行數據庫操作。這裏有一篇文章可供參考:
[url]http://wiki.python.org/moin/MacPython/FileMakerPro/AppscriptingOverview[/url]
發佈了26 篇原創文章 · 獲贊 1 · 訪問量 6808
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章