【问题标题】:Extracting images from excel sheet by row with python使用python逐行从excel中提取图像
【发布时间】:2017-01-18 16:40:07
【问题描述】:

我正在尝试从 Excel 工作表中提取图像。 excel表格基本上是一个带有图片和产品细节的产品列表。

EmbeddedFiles = zipfile.ZipFile(path).namelist()
ImageFiles = [F for F in EmbeddedFiles if F.count('.jpg') or F.count('.jpeg')]

我可以一次提取所有图像,但我无法找到一种按行获取图像的方法,以便我可以将产品保存到数据库中并将图像添加到相应的产品中。

我使用 openpyxl 从 excel 中读取数据,但这并没有提供获取图像的方法。我可以转移到其他图书馆。

最好的方法是什么。

【问题讨论】:

  • 从这里我可以看到,您正在打开一个zip 文件,并且您正在列出其所有图像内容。该excel文件如何适合图片?图片是 zip 文件还是 excel 文件编码?
  • xlsx 实际上是压缩的,当你解压一个 xlsx 文件时,你会得到一个包含图像的文件夹

标签: python excel image


【解决方案1】:

xlsx 文件确实是压缩格式,但这并不意味着您必须扩展它才能使用它。让openpyxl 为你做这件事。该库在其文档中提到它可以很好地处理这种格式。

因此请尝试使用文档中的thisthisthis 示例打开文件并逐行读取

【讨论】:

  • 这个我已经在做。使用 openpyxl 我可以迭代行并让我们说打印值,但它对工作表中的图像没有做任何事情。
  • 图像作为base64编码字符串包含在单元格中?每个图像应该属于一个单元格,打开 xlsx 文件并单击图像以查看它属于哪个单元格。
猜你喜欢
  • 2021-01-12
  • 1970-01-01
  • 2019-10-15
  • 2019-08-21
  • 1970-01-01
  • 1970-01-01
  • 2019-02-07
  • 2013-12-18
  • 2013-04-13
相关资源
最近更新 更多