GAE/PythonでOAuth

日曜日, 2月 6th, 2011 by

GoogleAppEngine / Python環境で、TwitterのOAuthを使ってみた。


1. TwitterのAPI利用申請

Twitterのアカウントを取得し、API利用申請をします。

  1. Twitterのアカウントを取得します
  2. Twitterにログインします
  3. 以下のアドレスにアクセスします

    https://twitter.com/apps

  4. 新しいアプリケーションを追加をクリックします
  5. アプリケーションの情報を入力して登録します

    ※コールバックURLは、GAEのIDがXXXの場合は、http://XXX.appspot.com/oauth/twitter/callback とします。

  6. 以下の2つの値をメモします
    • Consumer key pQcelwAEib60BhEoE52***
    • Consumer secret *******

2. サンプルアプリをデプロイ

すぐ動作するサンプルソースを見つけたのでデプロイしてみました。手順は以下の通り。

  1. サンプルソースコードの取得

    tweetapp / standalone / twitter_oauth_handler.py をダウンロードします

  2. API認証用のキーを設定

    先ほど取得した、APIを利用するためのキーを設定します。52行目付近からの2行です。

    1
    2
    'consumer_key': 'pQcelwAEib60BhEoE52***',
    'consumer_secret': '*******',
  3. demjson.pyのダウンロード
    サンプルプログラムには、標準ライブラリに含まれていないdemjsonモジュールが必要なのでダウンロードします。http://deron.meranda.us/python/demjson/から、Version1.5(最新版)のSingle fileタイプをダウンロードしました。ダウンロードしたファイルは、main.pyと同フォルダに配置するだけでOKです。
  4. GAEにデプロイ
    OAuthの認証はTwitterからのシグナルを受け取らないといけないので、作成したアプリを公開サーバに配備する必要があります。いつもどおりの手順でGAEにデプロイしましょう。

3. 動作確認

デプロイしたアプリケーションを確認してみましょう。以下のアドレスで私のデプロイしたサンプルアプリをご覧いただけます。1時間に2万回もAPIを使えるのはGoogleAppEngineの特権だった気がします。(未確認)

http://oauthsampleapp.appspot.com/

4. まとめ

OAuthによるTwitterとの連携を実現できた。簡易Twitterクライアントなど、実用的なアプリを作ってTwitterへの理解を深めたいとおもう。

Facebook comments:

comments

Leave a Reply


Get Adobe Flash player
single