Sponsored Link

(74) WEBブラウザ経由でPythonスクリプトを実行#2

(74) WEBブラウザ経由でPythonスクリプトを実行#2

(73) WEBブラウザ経由でPythonスクリプトを実行 を改造し、PHP経由ではなく CGIとしてPythonを実行してみる。機能自体は(73)とまったく同じ。

index.cgi

#!/usr/local/bin/python
# -*- coding: utf-8 -*-

print 'Content-type: text/html'

import cgi
import csv_calc

print """
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>サンプル</title>
</head>
<body>
"""

form = cgi.FieldStorage()

if form.has_key('upfile'):
	filename = form['upfile'].filename
	cmd      = int(form['cmd'].value)
	ret = csv_calc.sum_csv( filename, cmd )
	print ret

print """
<hr />
<form enctype="multipart/form-data" action="./" method=post>
<input type=file name=upfile><br />
<select name=cmd>
  <option value=1>合計値
  <option value=2>平均値
  <option value=3>最大値
  <option value=4>最小値
</select>
<input type=submit value="計算実行">
</form>
</body>
</html>
"""

csv_calc.py

import numpy as np

def sum_csv( fpath_csv, cmd ):
    data = np.loadtxt( fpath_csv, delimiter=',' )
    if cmd == 1:
        ret = data.sum()
    elif cmd == 2:
        ret = data.mean()
    elif cmd == 3:
        ret = data.max()
    elif cmd == 4:
        ret = data.min()
    else:
        print "invalid command"
        ret = 0
    return ret

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*