2013年8月4日日曜日

Python-twitterとGAEでbotを作る

今日はリトルマーメイド見てきたんで、本当はそっちの記事書きたいんですけどね。
頭にくるくらいGAEではまったのでそっちのこと書いときます。
例によって適当忘備録です。

とりあえず、Google App Engineを使ってtwitterのbotを作ろう!ということで、意気込んで作り始めました。
Javaでやろうとも思ったんですが、結局Pythonでやることに。
まず最初に
Python-twitter
simplejson
python-oauth2
httplib2
をダウンロードします。
で、開発用のフォルダ作ってがしがしコード書きます。
Localでは動くんですがね、GAE使うと動かないんですよ、これが。

----
#coding:UTF-8
import twitter

api = twitter.Api(
consumer_key = コンシューマーキー,
consumer_secret = シークレット,
access_token_key = アクセストークン,
access_token_secret = アクセスシークレット,
)

status = api.PostUpdate('python_twitterからツイート!')
----

上記プログラムは個人情報あるところ削りまくったので、
もしかしたら動かないかもです(・∀・)
で、動かなかった原因が
api = twitter.Api
にありまして、GAEではスタティックファイルが作成できないらしいのですが、Python-twitterではキャッシュとしてファイルを作ってしまうらしいです。
Python-twitter使えないじゃーん!!!!と思って、激おこな感じだったのですが、キャッシュを書き込まずに済む方法がありました!

api = twitter.Api(
consumer_key = コンシューマーキー,
consumer_secret = シークレット,
access_token_key = アクセストークン,
access_token_secret = アクセスシークレット,
cache=None
)

ってやればいいだけのようです。
こいつのせいで、何時間悩んだことか…。
あと、外部ライブラリの導入でも悩みましたね。
それは、開発ファイルにぶち込めば解決しましたが…。
とりあえず、デプロイすればなんとか動きそうです。よかった。

0 件のコメント:

コメントを投稿