使用 tablib 和 django-import-export 导入数据,使用 excel 出错,但使用 csv 可以正常工作

谢赫萨尔曼08

首先尝试在插入数据库之前读取 excel/csv 数据进行检查,虽然 csv 工作正常可以读取数据,但 xlsx 和 xlx 显示以下错误

/academy/add_advisor 'utf-8' 编解码器中的 UnicodeDecodeError 无法解码位置 10 中的字节 0xa1:起始字节无效

我的代码片段:

from tablib import Dataset
this_file = request.FILES['bulk_file']

dataset = Dataset()
imported_data = dataset.load(this_file.read().decode("utf-8"),format='xlsx')

for data in dataset:
    print(data[0], data[1], data[2], data[3], data[4])

根据来自此行的错误消息错误

imported_data = dataset.load(this_file.read().decode("utf-8"),format='xlsx')

我试图导入的 excel 文件,我从谷歌驱动器 excel 下载它作为 xlsx 文件(微软 excel)。还从 onedrive(microsoft) xlsx 文件下载了一个仍然出现相同的错误。

我尝试过的更多方法是

imported_data = dataset.load(this_file.read().decode("ISO-8859-1"),format='xlsx')
imported_data = dataset.load(this_file.read().strip().decode("ISO-8859-1"),format='xlsx')
imported_data = dataset.load(this_file.read().strip().decode("CP1252"),format='xlsx')
imported_data = dataset.load(this_file.read().strip().decode("windows-1252"),format='xlsx')
imported_data = dataset.load(this_file.read().strip().decode("Latin-1"),format='xlsx')

但是没有运气:(如果有更好的方法可以尝试,请分享:)(:感谢您阅读:)

威廉·范·翁塞姆

好吧,如果您the_file是一个.xlsx文件,那么手动解码可能不是一个好主意:an.xlsxXML 文件压缩流。所以这意味着它并没有真正遵循标准的字符串编码。

但是这dataset.load(..)也表明它不需要一个字符串,它需要它旨在加载的数据。如果是.xlsx文件,那是二进制数据,所以我们可以使用.read()将文件的内容读入二进制字符串,从而让其dataset进行正确的处理,例如:

imported_data = dataset.load(this_file.read(),format='xlsx')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用PowerShell和Import-CSV foreach循环处理变量

来自分类Dev

Django import-export导入具有对象关系的数据

来自分类Dev

使用django-import-export导入FloatField时出错

来自分类Dev

使用django-import-export进行django迁移的外键

来自分类Dev

使用django将CSV文件导入postgres

来自分类Dev

使用python和psycopg2将CSV导入Postgres时出错

来自分类Dev

使用VBA将XML数据导入excel,selectnodes无法正常工作(不返回任何内容)

来自分类Dev

使用ES6 import + export关键字和Babel导入/导出Express路由器

来自分类Dev

使用csvImporter将csv导入django模型

来自分类Dev

如何使用django-import-export导出属性值

来自分类Dev

使用gdm和lightdm的登录循环,startx可以正常工作

来自分类Dev

如何集成Django Import Export和Wagtail?

来自分类Dev

dexie在导出和导入时使用过滤器(dexie-export-import)

来自分类Dev

Django import-export-让用户导入数据

来自分类Dev

使用gdm和lightdm的登录循环,startx可以正常工作

来自分类Dev

使用Rspec进行测试会出错,但是使用浏览器进行测试可以正常工作

来自分类Dev

使用read.csv从URL导入数据

来自分类Dev

如何使用JavaScript将数据从excel(xlsx,csv)导入到HTML页面?

来自分类Dev

如何使用VBA Excel 2010导入CSV Excel数据以进行单元格分隔msoFileDialogOpen

来自分类Dev

使用ES6 import + export关键字和Babel导入/导出Express路由器

来自分类Dev

使用csvImporter将csv导入django模型

来自分类Dev

如何使用django-import-export导出属性值

来自分类Dev

导入Excel,使用PowerShell导出CSV

来自分类Dev

使用Python将CSV数据导入PostgreSQL

来自分类Dev

使用VBA将数据从.csv导入到Excel文档

来自分类Dev

如何使用 django-import-export 导出按不同列排序的记录?

来自分类Dev

使用导入 CSV 整合数据

来自分类Dev

使用 ADO 从 Excel 导入 Access 时出错

来自分类Dev

使用 Django 工作簿和工作表创建 Excel 文件

Related 相关文章

  1. 1

    使用PowerShell和Import-CSV foreach循环处理变量

  2. 2

    Django import-export导入具有对象关系的数据

  3. 3

    使用django-import-export导入FloatField时出错

  4. 4

    使用django-import-export进行django迁移的外键

  5. 5

    使用django将CSV文件导入postgres

  6. 6

    使用python和psycopg2将CSV导入Postgres时出错

  7. 7

    使用VBA将XML数据导入excel,selectnodes无法正常工作(不返回任何内容)

  8. 8

    使用ES6 import + export关键字和Babel导入/导出Express路由器

  9. 9

    使用csvImporter将csv导入django模型

  10. 10

    如何使用django-import-export导出属性值

  11. 11

    使用gdm和lightdm的登录循环,startx可以正常工作

  12. 12

    如何集成Django Import Export和Wagtail?

  13. 13

    dexie在导出和导入时使用过滤器(dexie-export-import)

  14. 14

    Django import-export-让用户导入数据

  15. 15

    使用gdm和lightdm的登录循环,startx可以正常工作

  16. 16

    使用Rspec进行测试会出错,但是使用浏览器进行测试可以正常工作

  17. 17

    使用read.csv从URL导入数据

  18. 18

    如何使用JavaScript将数据从excel(xlsx,csv)导入到HTML页面?

  19. 19

    如何使用VBA Excel 2010导入CSV Excel数据以进行单元格分隔msoFileDialogOpen

  20. 20

    使用ES6 import + export关键字和Babel导入/导出Express路由器

  21. 21

    使用csvImporter将csv导入django模型

  22. 22

    如何使用django-import-export导出属性值

  23. 23

    导入Excel,使用PowerShell导出CSV

  24. 24

    使用Python将CSV数据导入PostgreSQL

  25. 25

    使用VBA将数据从.csv导入到Excel文档

  26. 26

    如何使用 django-import-export 导出按不同列排序的记录?

  27. 27

    使用导入 CSV 整合数据

  28. 28

    使用 ADO 从 Excel 导入 Access 时出错

  29. 29

    使用 Django 工作簿和工作表创建 Excel 文件

热门标签

归档