ある人の発言から時事ネタサービスを作ろうと思いたったわけだが、TwitterとのOAuthまわりでハマりにハマって、結局有りモノに手を入れてしまったのでその話。 結論からいくと、使いやすい(と自分では思っている)ライブラリに修正して公開しましたよ、ということで。 simpleoauth-gae - Simple OAuth Library for GAE Environment - Google Project Hosting あれこれ調べる、試す Twitterに対してOAuthやろうと思うと思ったが、dev.twitter.comでPython用として紹介されているのは以下のライブラリ。組み合わせて使う。 python-oauth oauth-python-twitter2 前者 oauth2(python-oauth) が汎用的なOAuth用のライブラリで、後者 oauthtwitt
とにかく無価値なBotですが、そんな無価値なBotのためにRackspace Cloudのインスタンス代(約1円/時間)を払うのももったいないと言うことでGoogle App EngineへBotを移行させてみました。 もともとUbuntu Server上で動かしていたBotは Pythonで組まれたスクリプト 形態素解析に MeCab 定期実行はCron という構成でした。 Google App EngineはネイティブにPythonを動作させることの出来る希有なサービスですので移行は非常に単純でした。ほぼコピペ。 このほぼというのがミソで、一部追加しないといけないことがあるそうなので、素直に追加しておきましょう。 ちなみにキモの python-twitter は 0.6 を使用していますが、Api クラスにおいてファイルキャッシュを使っているために、素のままでは GAE で使えません。
Google APP Engineについては初期のころのまとめはあるのですが、Pythonですとリリースからそろそろ2年近くになり内容も大きく様変わりしています。最速マスターシリーズでもGoogle APP Engineについてのまとめが無く、そろそろアップデートの必要があると思いまとめてみました。 基本的にwindows環境中心です。 最初に ドキュメントを見るときは必ず英語版を見ましょう。日本語版があるのはありがたいのですが、バージョンとしてはかなり古く、特に歴史の長いPython版では現行の内容とはかなりの隔たりがあります。 Google APP EngineのドキュメントのURLは以下のようなパターンになっています。 http://code.google.com/intl/ja/appengine/docs/**** これのうちjaが言語を表すコードになっていますので、これをenに
import twitter # twitter.Api.__init__ method for override. def twitter_api_init_gae(self, username=None, password=None, input_encoding=None, request_headers=None): import urllib2 from twitter import Api self._cache = None self._urllib = urllib2 self._cache_timeout = Api.DEFAULT_CACHE_TIMEOUT self._InitializeRequestHeaders(request_headers) self._InitializeUserAgent() self._InitializeDefaultParamete
清水宗治botは、pythonで書かれていてGoogle App Engine上で動いています。ちょっと前に、Google App Engineがcronをサポートしたというのを聞いたので、それを試してみたくてこの環境で作ってみました。すごく簡単だったので、作り方を紹介します。 Twitterへの投稿には、Python Twitterてのを使ってみました。いや〜、便利な世の中ですね、先人に感謝です。ちゃっちゃと手軽にやりたかったので、データはファイルから読むようにしました。ここでは1日1Twitするbotを作るので、データファイルは、シンプルに日付とテキストをカンマで区切った行がただダラダラと並ぶ構造にしました。データファイルはdata.txtという名前で、UTF-8で保存してください。 9/9,実に秋晴れktkr 9/10,景治と将棋を指す。まだまだガキには負けないわw : : : メイ
MacでGoogleAppEngineの開発環境を構築する手順のまとめ Mac OS X 10.6.6 1.pythonをインストールする OS X には標準でpythonはインストールされていますがこのバージョンは2.6なのでGAEでは利用できません。 GAEで利用できるpythonのバージョンは2.5なのでpython2.5をインストールする必要があります。 1.1 MacPorts からインストールする MacではMacPortsというパッケージ管理システムを利用していろいろなソフトウェアを手軽にインストールすることができます。 これを利用してpython2.5をインストールします。 まずはMacPortsをインストールしましょう。 http://www.macports.org/ MacPortsの詳しいインストール方法はこちら http://blog.soi33.org/arch
2010/5/14 「6. cron用のファイルを作成する」のサンプルがそのままコピーしても動かなかったようなので修正 自分が実際にBOTが動くまで行った手順をまとめてみました。 WindowsXP SP3で作成しています。他のOSでは一部違う所もあるかもしれません。 2011年10月現在このページに書かれた方法では上手くBOTが動かないようです。他のサイトを参考にしてください。 BOT本体を作る プログラミングができなくても作れるTwitter botの作り方 こちらのサイトを見れば「定期的に文章をpostする」「@付きのレス中の特定の単語に反応し、それに応じたレスをする」といったシンプルなBOTならCGIの知識が一切ない人でも作れると思います。 webから文章を拾ってくるなど特殊なものは自分でスクリプトを書かないと無理です。 ここの説明を見ながらBOTを作りPHPを使えるサーバー(無料
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
本ブログで紹介していたGoogle+の投稿をRSSに変換してくれるサービス「Google Plus Feed」が9月1日から使えなくなっていました。 Google+のフィードが取得できる唯一の存在だったので、かなり痛いです。 作者のRussell Beattie氏は、Google+上でサービス中止に至った理由を語っていました。 これを見ると、Google App Engineの新料金体系になると今まで$2.50/日だったのが$34.38/日のコストがかかるようになるので、継続できないとのことです。 「Google Plus Feed」では、Google+のプロフィールページをフェッチしてJSONデータを取得し、RSSのXML形式にして配信するシンプルな仕組みです。 今まで無料で提供してくれていたサービスだけあって、コストが13倍も膨れ上がるとサービス停止の判断はもっともだと思います。 Ap
みなさんこんにちは。ふむふむソフトの飯島です。 さっそくですが、みなさんはTwitter APIを使ってプログラミングしていますか? すでに星の数ほどTwitterアプリやWebサービスはありますし、バリバリ使っている方も多いと思いますが、「知っているけれど、なかなか触るチャンスがなくて……」という方もたくさんいるのではないでしょうか? そこで今回から5回にわたって、Twitter APIを使ったWebサービスのプログラミングについて解説したいと思います。ただAPIの使い方を解説するだけでは面白くないですから、Webサービスを公開するサーバーとしてグーグルのクラウドサービス「Google App Engine(以下GAE)」を使い、自分でサーバーを用意することなく全部無料で遊んでみましょう。 本連載では、サンプルコードのダウンロードはもちろん、Twitter APIの準備からGAEの準備、
GoogleAppEngine / Python環境で、TwitterのOAuthを使ってみた。 1. TwitterのAPI利用申請 Twitterのアカウントを取得し、API利用申請をします。 Twitterのアカウントを取得します Twitterにログインします 以下のアドレスにアクセスします https://twitter.com/apps 新しいアプリケーションを追加をクリックします アプリケーションの情報を入力して登録します ※コールバックURLは、GAEのIDがXXXの場合は、http://XXX.appspot.com/oauth/twitter/callback とします。 以下の2つの値をメモします Consumer key pQcelwAEib60BhEoE52*** Consumer secret ******* 2. サンプルアプリをデプロイ すぐ動作するサンプル
ここやここを見て自分もやってみたかったのでやってみますた。言語はScalaでフレームワークはScalatra使いました後は自作のこれとこれです サーバー側コード import org.scalatra.ScalatraServlet import jp.gr.java_conf.ogatatsu.gae.datastore.{Model, Datastore} import jp.gr.java_conf.ogatatsu.gae.memcache.Memcache //元URLと短縮文字列を保存するためのモデル //keyNameに元URL、shortプロパティには短縮した文字列を入れる object URL extends Model { val short = StringProperty("short") val * = short type ColumnTypes = Strin
August 2011 (1) July 2011 (1) June 2011 (2) April 2011 (2) March 2011 (2) February 2011 (2) January 2011 (6) December 2010 (6) November 2010 (5) October 2010 (8) September 2010 (2) August 2010 (3) July 2010 (9) June 2010 (4) March 2010 (1) February 2010 (7) January 2010 (2) はじめに この数ヶ月、GAE/Python の勉強を兼ねて幾つかのGAEアプリを作りました。 その過程で気づいたこと/ハマったことをまとめました。 Tips一覧 今回取り上げる Tips は次の通りです。 開発環境 Python2.5 を使う 最新の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く