Ho cercato modi per caricare file di grandi dimensioni con dati aggiuntivi, ma non sembra esserci alcuna soluzione. Per scaricare un file, sono stato utilizzando questo codice e sta lavorando bene con file di piccole dimensioni:python richiede di caricare file di grandi dimensioni con dati aggiuntivi
with open("my_file.csv", "rb") as f:
files = {"documents": ("my_file.csv", f, "application/octet-stream")}
data = {"composite": "NONE"}
headers = {"Prefer": "respond-async"}
resp = session.post("my/url", headers=headers, data=data, files=files)
Il problema è che il codice carica l'intero file prima di inviare, e vorrei correre in MemoryError durante il caricamento di grandi dimensioni File. Ho guardato in giro, e il modo per lo streaming dei dati è quello di impostare
resp = session.post("my/url", headers=headers, data=f)
ma ho bisogno di aggiungere { "composito": "NONE"} ai dati. In caso contrario, il server non riconoscerebbe il file.
Guardando il codice in models.py, PreparedRequest class, metodo prepare_body, non c'è modo di utilizzare le richieste per lo streaming di file di grandi dimensioni con dati aggiuntivi. –