我試圖修改上傳到我的燒瓶應用程序中的csv。當我沒有通過燒瓶上傳時,我的邏輯工作得很好。打開已上傳到Flask中的文件
import pandas as pd
import StringIO
with open('example.csv') as f:
data = f.read()
data = data.replace(',"', ",'")
data = data.replace('",', "',")
df = pd.read_csv(StringIO.StringIO(data), header=None, sep=',', quotechar="'")
print df.head(10)
我將其上傳到燒瓶中,並使用它
f = request.files['data_file']
訪問當我運行它通過上面的代碼,以代替開放(「example.csv」)打開(f)中,我得到的以下錯誤
coercing to Unicode: need string or buffer, FileStorage found
我已經發現問題是這裏的文件類型。我無法在我的文件上使用open,因爲open正在查找一個文件名,並且當文件上傳到flask時,它就是正在傳遞給open命令的文件的實例。但是,我不知道如何使這項工作。我試過跳過打開的命令,只是使用data = f.read(),但不起作用。有什麼建議麼?
由於
_「我試着跳過打開命令,只是用數據= f.read(),但不工作。「_ 怎麼了? – glibdud
它只是創建一個沒有任何信息的空字符串。 – user3761017