python - 从 Django Web 表单解析 csv 的问题
问题描述
我希望有人可以帮助我解决这个问题。我从 Django 的表单中获取一个文件,这个文件是一个 csv,我正在尝试使用 Python 的库csv来读取它。这里的问题是,当我应用函数csv.reader并将结果转换为列表以便打印时,我发现csv.reader没有正确拆分我的文件。这是一些显示问题的图像
正如您在图片中看到的,它似乎是逐个字符地分割我的文件,但有一些例外。我感谢您为我提供的任何帮助。
解决方案
如果您从 Web 表单中提取,请尝试将 csv 作为字符串获取,在打印或调试工具中确认结果正确,然后使用 StringIO 将其传递给 csv。
from io import StringIO
import csv
csv_string = form.files['carga_cie10'].file_read().decode(encoding="ISO-88590-1")
csv_file = StringIO(csv_string)
reader = csv.reader(csvfile, delimiter=',', quotechar='"')
for row in reader:
print(row)
您可以尝试的另一件事是将lineterminator
参数更改为csv.reader()
. 它可以默认为,\r\n
但网络表单可能会使用其他值。检查您从 Web 表单中获得的字符串以进行确认。
推荐阅读
- amazon-web-services - 具有固定 IP 的 AWS 客户端 VPN
- c# - EpiServer 网站注销不再起作用
- pandas - 如何使用方法链接跨列使用 groupby 转换?
- google-apps-script - 如何在饼图中显示值 - Google Apps 脚本
- python-3.x - Pandas:如何计算 DateTime 索引
- nginx - Nginx 2 重写 2 例
- javascript - 导航栏不展开(React JS)
- reactjs - 样式(css)不适用于阴影 DOM 中的 React 应用程序
- regex - 替换为 regexp i Template Toolkit
- sparql - RDFlib 空白节点更新查询