前にASE の Python で Twitter にポストしてみたというのを書いたのですがその続きです。昨日@galleriapizzaさんという方から、以前は HT-03A で動いていた ASE(Android Scripting Environment) 上の Python のスクリプトが動かなくなったということについて質問を受けました。ドキュメントも殆どないし、あまり凝ったこともできなさそうということで ASE はもう使っていなかったのですが、あらためてAndroidFacadeAPIを見てみると、少なくとも入力の受け付け方などは変わっているようです。
以前は
uid = droid.getInput('Twitter ID?')['result']
とすれば、 uid には Unicode 文字列が入っていたのですが、今は
uid = droid.getInput('Twitter ID')
で uid に getInput の結果のオブジェクトが入っているようで、 Unicode 文字列を取り出したいときは
uid.result
とアクセスする必要があるようです。
まあなんか他にも色々と変更点があるようなので、ちゃんと追っかけていくのでなければ近寄らない方が良いような印象を受けましたが、それはヘタレですかそうですか。
ところで、最後にエラーは出るもののポストはなんとかできたというサンプルを以下に。
import android
import twitter

def post():
    droid = android.Android()

    uid = droid.getInput('Twitter ID?')
    pw = droid.getInput('Password?')
    body = droid.getInput('Body?')

    t = twitter.Twitter()
    t.set_auth(uid.result, pw.result)
    t.update(body.result)

    droid.exit()

if __name__ == '__main__':
    post()
Posted by setomits at 14:04 | Comments: 0
Leave a comment
Required fields are marked with *
search
calendar
Feb 2012
SunMonTueWedThuFriSat
   1234
567891011
12131415161718
19202122232425
26272829   
archives
photos on flickr
www.flickr.com