Как загрузить данные файла CSV в панды, используя request.FILES (Django 1.11) без сохранения файла на сервере - PullRequest
0 голосов
/ 01 ноября 2018

Я просто хочу загрузить .csv файл через форму, непосредственно в pandas dataframe в django, не сохраняя физический файл на сервере.

def post(self, request, format=None):
        try:
            from io import StringIO, BytesIO
            import io
            print("data===",request.FILES['file'].read().decode("utf-8"))
            # print("file upload FILES data=====",pd.read_csv(request.FILES['file'].read(), sep=','))
            #print(request.FILES)
            print("file upload data df=====11")
            mm = pd.read_csv( BytesIO(request.FILES['file'].read().decode("utf-8")))
            print("dataframe  data=====",mm)
            # import io, csv
            # urlData = request.FILES['file']
            # data = [row for row in (csv.reader(urlData))]
            # print("file upload data df=====222",data)

            # mm = pd.read_csv()

            #excel_file = request.FILES['file']
            # movies = pd.read_excel(request.FILES['file'])
    except Exception as e:
        print(e)
        log.debug("Error in CheckThreadStatus api key required "+str(e))
        return Response(responsejson('api key required', status=404))

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

Проверьте с pd.read_csv ('data.csv') # doctest: + SKIP

Если вы используете почтовый метод, вы можете попробовать getFile = request.FILE ['file_name']

pd.read_csv (getFile) # doctest: + SKIP

0 голосов
/ 02 ноября 2018

ответ прост: это

    pd.read_csv(request.FILES['file'])

работает отлично, ошибка, которую я делал, в том, что .. мой CSV-файл был не в правильном формате.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...