React + Django обработка csv

Я работаю над приложением Data Mining с React и Django, я вроде бы понимаю, как отправить файл в Django, но как мне прочитать файл, применить алгоритм и вернуть данные процесса в react для показа? Цель приложения - каждый раз читать разные csv файлы, поэтому мне не нужно создавать модели, даже не нужно хранить данные, просто обрабатывать информацию.

Я видел много руководств, но все используют базу данных, есть ли метод для обработки файла без сохранения чего-либо, только обработка и возвращение данных процесса для создания графиков и прочего? Как я могу это сделать?

Это моя попытка с компонентом react для отправки файла в django, но теперь, что дальше? как мне прочитать его в django? и как мне отправить данные процесса обратно в react?

import { useState } from "react";

function DragDropFiles(){
    const [selectedFile, setSelectedFile] = useState();
    const [isFilePicked, setIsFilePicked] = useState(false);

    const changeHandler = (event) => {
        setSelectedFile(event.target.files[0]);
        setIsFilePicked(true);
    }

    const handleSubmission = async () =>{
        const formData = new FormData();

        formData.append('File', selectedFile);

        let newData = await fetch(
            base_url,
            {
                method: 'POST',
                headers: {
                    'Content-Type': 'multipart/form-data'
                },
                body: formData,
            }
        )
        .then((response) => response.json())
        .then((result) =>{
            console.log('Success:', result);
        })
        .catch((error) =>{
            console.log('Error:', error);
        });
    };

    return(    
        <>
            <div>
                <input type="file" name="file" onChange={changeHandler} />
                {isFilePicked ? (
                    <div>
                        <p>Filename: {selectedFile.name}</p>
                        <p>Filetype: {selectedFile.type}</p>
                        <p>Size in bytes: {selectedFile.size}</p>
                    </div>
                ) : (
                    <p>Select a file to show details</p>
                )}
                <div>
                    <button onClick={handleSubmission}>Submit</button>
                </div>
            </div>
        </>
    );
};

export default DragDropFiles;

Я знаю, что мне нужно импортировать pandas, numpy и другие библиотеки для обработки данных, но я имею в виду, буквально, как мне "получить" файл csv в бэкенде?

Спасибо.

Вернуться на верх