このサイトについて

appscript - PythonでMacのアプリケーションとお話し

appscript - PythonでMacのアプリケーションとお話し

appscriptというのが面白い。AppleEventのラッパーで,Pythonを使ってMacのアプリケーションを操作したり,アプリケーションのデータを取得したりできる。appscriptを使うと,AppleEventでやりとりされるオブジェクトをPythonのオブジェクトとして扱うことが出来る。

たとえば,iTunesから最近再生した曲を取得してみる。事前にiTunesを立ち上げて,曲を再生しておく必要がある。

In [1]:import appscript # appscriptをimport

In [2]:itunes = appscript.app('iTunes') # iTunesのオブジェクトを生成

In [3]:print itunes.current_track.album.get() # 再生中のアルバム名を取得
Dialogue1800-1

In [4]:print itunes.current_track.artist.get() # 再生中のアーチスト名を取得
旺文社

iCalともお話しが出来る。日付データはdatetimeオブジェクトになる。

In [1]:ical = appscript.app('iCal') # iCalをオブジェクトとして取得

In [2]:print '\n'.join([x.name.get() for x in ical.calendars.get()]) # カレンダーの名前一覧を表示
Webcore
JPUG
Python
Personal
Japanese Holidays
東京の天気 - livedoor weather

In [3]:print '\n'.join([x.summary.get() for x in ical.calendars[0].events.get()]) # イベントのタイトルを表示
CMS導入事例セミナー2006
雑誌記事公開
待機ASW
:

AppleEventのオブジェクト構造がうまくドットノーテーションに変換されている。コツをつかめばけっこう自由に使えて楽しい:-)。 Pythonだけでなく,PerlやRubyのラッパーもあるみたい。

2010-08-27 04:44