Чтение CSV из потока BytesIO (без других модулей Python)Python

Программы на Python
Ответить
Anonymous
 Чтение CSV из потока BytesIO (без других модулей Python)

Сообщение Anonymous »

В мое веб-приложение загружен CSV-файл. Объект Request веб-приложения принимает этот файл с помощью потока BytesIO (за кулисами), который затем сохраняется в переменной uploaded_file, поэтому сервер никогда не сохраняет данные на диске (даже временно).
Как загрузить эти байтовые данные в CSV, чтобы можно было проанализировать их в своем приложении?
Я пробовал это:
import csv
from io import BytesIO

uploaded_file = b"cvsdata1,cvsdata2,cvsdata3,..." # already streamed as bytes data from Request object

# Read the bytes again using BytesIO for csv processing
with BytesIO(uploaded_file) as csv_file:
csv_reader = csv.reader(csv_file)
for row in csv_reader:
print(row)

Но это приводит к этой ошибке:
for row in csv_reader:
^^^^^^^^^^
_csv.Error: iterator should return strings, not bytes (the file should be opened in text mode)


Подробнее здесь: https://stackoverflow.com/questions/793 ... on-modules
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»