from quart import Quart, request, render_template, jsonify
import json
import os, sys
import pandas as pd
import requests
import asyncio
from pylon.model.db_models import RawFiles
from pylon.orm import db
app = Quart(__name__)
@app.route('/upload', methods=['POST'])
async def handle_form():
f = await request.files['filename']
f.save(f.filename)
data = pd.read_csv(f.filename)
data.to_json("json_data.json")
data = pd.read_json("json_data.json")
os.remove("json_data.json")
os.remove(f.filename)
print(type(data))
print(data)
return ""
@app.route("/")
async def index():
return await render_template('upload.html')
if __name__ == "__main__":
app.run(host="bheem11.arch.des.co", port=5043, debug = True)
我收到标题中描述的一个错误。我在python的石英框架中工作。希望找到适当的解决方案。其实我在执行@ app.route(“ / upload”,method =“ post”)时收到协程错误。
答案 0 :(得分:0)
此行await request.files['filename']
应该为(await request.files)['filename']
。如果没有括号,则会首先评估await
右边的所有内容,这将导致尝试预订['filename']
属性((files
操作)。这不起作用,因为files
属性返回协程-不能下标。 Quart documentation中有更多相关内容。