У меня есть следующий код для загрузки файла CSV с использованием Python FLASK.
from flask_restful import Resource
import pandas as pd
ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
class UploadCSV(Resource):
def post(self):
files = request.files['file']
files.save(os.path.join(ROOT_PATH,files.filename))
data = pd.read_csv(os.path.join(ROOT_PATH,files.filename))
print(data)
api.add_resource(UploadCSV, '/v1/upload')
if __name__ == '__main__':
app.run(host='localhost', debug=True, port=5000)
Этот код работает нормально, и я могу успешно загрузить CSV-файл и прочитать его с помощью pandas dataframe. Но я сохраняю CSV в локальной файловой системе и читаю его.
Я пытался читать, как показано ниже -
files = request.files['file']
files.read()
Полученные результаты были в формате байтов, но мне нужно в формате словаря. Поэтому я использовал pandas dataframe, чтобы прочитать его, а затем преобразовал в пользовательский словарь моего формата.
Можно ли читать файл CSV на лету, не записывая его в локальную файловую систему? Или любой другой эквивалентный способ, которым мы можем добиться с помощью Python Flask Restful?