• ログインログイン
  • 新規登録新規登録

MENU

Google App Engineで遊んでみよう! 第4回

連載Google App Engineで遊んでみよう!

GoogleAppEngineを使った開発レシピです。AWSやさくらインターネットのVPSやレンタルサーバなどの他の有名なクラウド環境と比べると少しクセがあるものの、慣れると非常に楽に開発やローンチができます。一定の範囲内まで無料で活用できるようになっているので、これを機会にぜひ活用してみましょう。

前回までのプログラミング学習コラムに続き4回目の勉強内容です。

こんにちは、ぴかしです。前回は、Twitter Botの基本的な機能を作成しました。

今回はいよいよ、このBotをGAEにのせ、一定時間ごとに自動投稿させてみようと思います!実行環境はMac OS X、Python2.6系です。

GAEの環境設定・アプリケーション登録

  1. まず、GAEのページから、利用登録を行なって下さい。
  2. 次に、SDK for Pythonをダウンロードし、インストールします。

これで環境は整いました。では、今回動かすアプリケーションを登録してみましょう。Application OverviewのCreate Applicationをクリックし、情報を登録して下さい。ここでは、以下のように登録しました。

設定ファイルの作成

Botを動かすには、以下の2つのyamlファイルが必要になります。

・app.yaml

アプリケーションの設定ファイルです。詳しい書き方はアプリケーション設定ページを参考にして下さい。

application: haisyakowakunai # 先程登録したApplication ID
version: 1
runtime: python
api_version: 1
handlers: - url: /post_tweet.* 
script: post_tweet.py
login: admin

・cron.yaml

一定時間ごとにプログラムを自動実行してもらうためのファイルです。ここでは、2時間に1回実行するように設定しています。

cron:
- description: post_tweet
url: /main.*
schedule: every 2 hours

これら2つのファイルを、前回作成したpost_tweet.pyと同じ階層に置いてください。
現在、以下の様な構造になっていればOKです。

haisyakowakunai
 ├── httplib2/
 ├── oauth2/
 ├── simplejson-3.3.0/
 ├── twitter.py
 ├── post_tweet.py
 ├── app.yaml
 └── cron.yaml

これで、ファイルをアップロードする準備が整いました。

ファイルのアップロード

まず、ファイルをアップロードする前に、開発用Webサーバで実行してみます。以下のコマンドをサーバを起動してみて下さい。

dev_appserver.py haisyakowakunai

そして起動した状態で、http://localhost:8080/post_tweet.py にアクセスしてみましょう。何も表示されていなければ、プログラムがうまく実行されています。作成したアカウントから記事が投稿されていると思います。ではいよいよ、本番環境にファイルをアップロードしてみましょう。以下のコマンドでアップロードできます。

appcfg.py update haisyakowakunai

これで完成です!2時間おきに記事が投稿されます。アプリケーション管理ページからログなどを見ることができます。

今回までのことを活かして、ぜひおもしろい機能をもったBotを作成してみてはいかがでしょうか?次回は、GAEのデータストア(一般のWebアプリケーションでいうデータベース)を利用する方法を解説します。ご期待ください。

オススメ記事一覧

もっと見る
完全無料!

1で登録完了!

エンジニアの仕事・年収や選考ノウハウ記事が読めるほか、
会員にはプログラミング講習やES・面接対策などリアルな無料サポートも充実。
ここだけの求人情報も多数。

今すぐ新規会員登録
Page Top