目的
pythonで「A と、見せかけて B」と、出力してくるコードをローカルWebサーバ上で動かす際の備忘録です
準備
以下を参考にさせて頂きました。
コード
ファイル構成
test/
index.html
cgi-bin/cgi-test.py
index.html
<html>
<head>
<title>サーバーテスト</title>
<meta http-equiv="content-type" charset="utf-8">
</head>
<body>
<form action="/cgi-bin/cgi_test.py" method="POST">
<div>
<label for="season">test</label>
<input type="text" name="season" value="test">
<button>送信</button>
</div>
</form>
</body>
</html>
cgi-bin/cgi-test.py
#!/usr/bin/env python
import cgi
import cgitb
import random
cgitb.enable()
print("Content-Type: text/html; charset=utf-8\n\n")
print("<html><body>")
form = cgi.FieldStorage()
#for key in form:
# value = form[key].value
# print('<p>%s: %s</p>' % (key, value))
l = ["りんご",
"みかん",
"いちご",
"パイナップル",
"ドラゴンフルーツ"]
def bot():
string1=random.choice(l)
string2=random.choice(l)
string=string1+"、と、見せかけて、"+string2
print(string)
bot()
print("</body></html>")
webserverを起動
$ python3 -m http.server 8080 --cgi
テスト
ブラウザに、"http://0.0.0.0:8080"を入力してindex.htmlを表示
送信ボタンを押して、「Aと、見せかけてB」が表示されればOK
参考
【Mac】PythonでCGIが動く簡単なHTTPサーバー作りたい
ゼロからはじめるPython 第43回 Pythonを使ったWebサイトは百円で運用できる(その1)
Pythonしか書きたくない人が、AWS上にWEBアプリを作ってみました。
なな転び八起きのAWS開発日記
みんなのPython Webアプリ編 - フォームの処理