首页 > 解决方案 > 将熊猫上传到 django 视图时读取文件时出现问题

问题描述

我正在使用 axios 将一些 excel 和 csv 文件上传到 django 视图,然后我将这些文件传递给使用 pandas read_csv 和 read_excel 函数来处理它们的函数,我遇到的第一个问题是一些包含非 utf 的 excel 文件-8 个 pandas 无法读取的字符,我发现的唯一解决方案是在读取文件时设置“engine = 'python'”(将编码更改为 utf-8-sig 或 utf-16 不起作用)。

这在我从终端测试脚本时有效,但是当我在视图上使用相同的脚本时出现以下错误:ValueError(“'python'引擎无法遍历此文件缓冲区。”)

这是我正在使用的代码:

try:
  data = pandas.read_csv(request.FILES['file'], engine="python")
except:
  print("Oops!",sys.exc_info(),"occured.")

通过终端尝试相同的功能可以正常工作

pandas.read_csv("file.csv", engine="python")

标签: djangopandasdjango-rest-framework

解决方案


推荐阅读