このページの本文へ

サンプルコードで分かるGAE&Twitter API開発

2010年04月28日 11時00分更新

飯島進仁/株式会社ふむふむソフト

  • この記事をはてなブックマークに追加
本文印刷

サンプルコードの処理を理解しよう

 サンプルに含まれるファイルの役割が分かったら、それぞれのファイルの具体的な処理の中身を見ていきましょう。本来はGAEやPythonなどの基本的な部分から解説したいところですが、全5回ではとても収まらない大型連載になってしまいますので、GAEやPythonの基本的なところは以下のページを併せてチェックしてください。SDKのインストールから実際のコーディング、サーバーへのアップロードまでをチュートリアル形式で学習できる、大変すばらしいガイドとなっています。

Google App Engine -スタートガイド:Python
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/


 また、ここではサンプルコードを理解するうえでポイントとなる部分のみ説明しますが、サンプルコード中にも処理内容をコメントとして記述してありますので、参考にしてください。


main.pyがプログラムの本体なのはなぜ?

 まずは、app.yamlをテキストエディターで開いてみましょう。前のページで、「main.pyがサンプルプログラムの本体である」と説明しましたが、その理由はこのapp.yamlの中に隠されています。


[app.yaml:6~8行目]


handlers:
- url: .*
  script: main.py


 「main.py」というファイル名があります。実はここで、アプリケーションのすべてのURLはこの「main.py」ファイルが処理する、と定義しています。

 app.yamlの記述方法に関して、詳しくはGoogleのドキュメントをご覧いただきたいと思いますが、「.*」は正規表現で「すべての文字列パターンにマッチする」という意味である、と知っている人なら、「すべてのURLはmain.pyで処理する」ことが何となく理解してもらえると思います。


oauth.py やsimple_cookie.pyなどのファイルはどう使う?

 main.pyがメインの処理だとすると、同じくPythonで書かれた外部ファイルの「oauth.py」や「simple_cookie.py」はどのようにしてmain.pyから利用されているのでしょうか?

 外部のPythonファイル(モジュール)を読み込むには、まずimportという宣言をする必要があります。main.pyの「20~33行目」に、


import oauth
from simple_cookie import Cookies


という記述が見つけられると思います。この2行が、それぞれ

  • 「oauth.py」というファイル(拡張子.pyより前の部分と対応します)を使う
  • 「simple_cookie.py」ファイルの中から、Cookiesというクラスを使う

という宣言になっています。その結果、TwitterClientクラスやCookiesクラスが利用できるわけです。

 今回のサンプルではoauth.pyとsimple_cookie.pyの2つだけではなく、「webapp」や「template」など、さまざまなモジュールを読み込んでいますが、これらも仕組みは同じです。GAE SDKのインストールフォルダ以下には大量のPythonファイルが置かれていて、そこからモジュールを読み込んで使っているだけなのです。

Web Professionalトップページバナー

この記事の編集者は以下の記事をオススメしています

ASCII.jp会員サービス 週刊Web Professional登録

Webディレクター江口明日香が行く