尝试使用CSV文件上传功能将文本分类模型放置到flask应用程序中,以在不保存上传的.csv文件的情况下读取数据并将其扔到我的分类器模型中,然后在结果页上进行打印。下面是我尝试的示例代码:
@app.route('/', methods=['GET', 'POST'])
def upload_file():
if request.method == 'POST':
file = request.files['file']
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
file.stream.seek(0)
myfile = file.file
dataframe = pd.read_csv(myfile)
return
else:
return "Not Allowed"
return render_template("home.html")
这是我的表单
<form action="" method=post enctype=multipart/form-data>
<input type=file name="file[]" multiple>
<input type=submit value=Upload>
</form>
例外发生在这里
NameError: name 'allowed_file' is not defined
关于这种问题有什么想法吗?
答案 0 :(得分:0)
我认为您正在使用文档的这一部分:(http://flask.pocoo.org/docs/0.12/patterns/fileuploads/)
但是您必须添加功能:
def allowed_file(filename):
return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS`
答案 1 :(得分:0)
您是否在模块中创建了名为allowed_file()
的函数?还是您在另一个模块中创建了它,却忘记了导入它?您正在将文件名输入到函数allowed_file()
中,以便它可以检查是否允许文件名,但是NameError
表示找不到函数allowed_file()
。