カテゴリー別アーカイブ: python

[python]bottleでcgi[1]

.pythonのCGIでフレームワーク「bottle」を使ってみます。
bottleはbottle.pyがあればpythonの基本ライブラリのみで動くという
便利なフレームワークです。
ではまずbottle.pyをDLします。
http://bottlepy.org/docs/dev/index.html
そして、htdocs以下の適当な場所に置いて、さらにcgiファイルを
作成します。
test.cgi
#!C:\Python27\python.exe
# -*- coding: utf-8 -*-
import bottle
from bottle import get, post, request,template,route,run,response,debug
@route(‘/login’)
def login():
    return ”’
        <form action=”./login” method=”post”>
            User<input name=”username” type=”text” />
            Pass: <input name=”password” type=”password” />
            <input value=”Login” type=”submit” />
        </form>
    ”’
@route(‘/login’, method=’POST’)
def do_login():
    username = request.forms.get(‘username’)
    password = request.forms.get(‘password’)
    if check_login(username, password):
    out =  template(‘tpltest’)
        return out
    else:
        return “<p>Login failed.</p>”
def check_login(a,b):
ifa == ‘hoge’ and b == ‘piyo’:
return True
else:
return False

bottle.run(server=’cgi’)

そしてviewsフォルダを作って、その中にtpltest.tpl
というファイルを作成します。
tpltest.tpl

<b>tpltest</b>
そして、
http://localhost/py/test.cgi/login
にアクセスしてフォームが表示されるのを確認、
ユーザ名、パスワードをそれぞれhoge、piyoとして入力、
tpltest
と太字で表示されてば成功です。これはviews以下のフォルダの中のtplファイル
を見て表示しています。
(つづく)
Kyo Asahina
広告