2017-12-13 15 views
-1

私はWebフォームの内容をPythonスクリプトに入れようとしています。私は以下のコードを使用しました。私がsubmitを押すと、私はウェブページ上の出力を見なければなりません。基本的にこんにちは、(入力としてWebページから取得)。タイプエラーが発生しました。Pythonプログラムの変数を返すときにTypeErrorエラーが発生する

#!/bin/python 

import os 

from flask import Flask 
from flask import request 
from flask import render_template 

app = Flask(__name__) 

@app.route('/') 

def my_form(): 
    return render_template("index.html") 

@app.route('/', methods=['POST']) 

def my_form_post(): 
    text = request.form['text'] 
    cmd = "sh relay.sh " + text 
    rep = os.system(cmd) 
    return rep 

if __name__ == '__main__': 
    app.run() 

これを実行すると、次のエラーが発生します。私は基本的にWebページ(テキストボックス)からいくつかの情報を渡そうとしています。出力を確認するために「Damnnn」と入力しました。

Hello, Damnnn 
10.x.x.x - - [19/Jan/2017 0227:11:51] "POST/HTTP/1.1" 500 - 
Traceback (most recent call last): 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1997, in __call__ 
    return self.wsgi_app(environ, start_response) 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1985, in wsgi_app 
    response = self.handle_exception(e) 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1540, in handle_exception 
    reraise(exc_type, exc_value, tb) 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1982, in wsgi_app 
    response = self.full_dispatch_request() 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1615, in full_dispatch_request 
    return self.finalize_request(rv) 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1630, in finalize_request 
    response = self.make_response(rv) 
    File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1740, in make_response 
    rv = self.response_class.force_type(rv, request.environ) 
    File "/usr/lib/python2.7/site-packages/werkzeug/wrappers.py", line 911, in force_type 
    response = BaseResponse(*_run_wsgi_app(response, environ)) 
    File "/usr/lib/python2.7/site-packages/werkzeug/test.py", line 884, in run_wsgi_app 
    app_rv = app(environ, start_response) 
TypeError: 'int' object is not callable 

私はPythonの初心者です。

答えて

1

返すオブジェクトがintの場合、このような文字列にキャストしようとします。

return str(rep) 
+1

このコマンドを実行して出力を取得しますか? https://www.journaldev.com/16140/python-system-command-os-subprocess-call –

関連する問題