如何将excel或csv文件作为熊猫数据框上传到flask?

时间:2018-07-16 07:13:26

标签: python pandas flask

我一直在尝试将csv / excel文件作为烧瓶应用程序上的熊猫数据框上传。我找不到任何可以帮助将文件作为数据帧上传的方法。下面是使用的代码。

temp = pd.DataFrame(temp, columns=['result', 'abserr'])
temp

1 个答案:

答案 0 :(得分:2)

您没有提供代码中使用的模板(upload.html)。
另外,return print(...)返回None,并且None并不是Flask视图中的有效响应。

这是一个可行的示例:

upload.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form method=post enctype=multipart/form-data>
    <input type=file name=file>
    <input type=submit value=Upload>
</form>
Shape is: {{ shape }}
</body>
</html>

app.py

from flask import Flask, request, render_template
import pandas as pd

app = Flask(__name__)

@app.route('/upload', methods=['GET', 'POST'])
def upload():
    if request.method == 'POST':
        df = pd.read_csv(request.files.get('file'))
        return render_template('upload.html', shape=df.shape)
    return render_template('upload.html')

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

dummy.csv

id,name,surname
1,John,Doe
2,Jane,Doe

上传dummy.csv后的结果:
enter image description here