当前位置: 首页 > 知识库问答 >
问题:

使用OpenPyXL读取提取的XLSX文件

赫连越
2023-03-14

因此,我一直在使用Python3.2和OpenPyXL的iterable工作簿,如这里的“优化阅读器”示例所示。

当我尝试使用此策略读取从简单文档中提取的一个或多个文件时,就会出现问题。zip存档(手动和通过html" target="_blank">python zipfile包)。当我调用时。获取最高的列()我得到“A”和。get_highest_row()我得到1,当要求打印每个单元格的值时,如下所示:

wb = load_workbook(filename = file_name, use_iterators = True)
ws = wb.worksheets[0]    # Only need to read the first sheet, nothing fancy
for row in ws.iter_rows():
    for entry in row:
        print(entry.internal_value)

它打印A1、A2、A3、A4、A5、A6和A7中的值,而不管文件实际有多大。文件本身没有任何原因,它将在Excel中完全打开。我很困惑它为什么会这样,但我假设解压后的XLSX在从Excel中保存之前的格式不同,OpenPyXL无法正确解释它。我甚至重新命名了这个名字。xlsx‘到’。zip'以便我可以浏览该文件并检查差异,但除了从Excel保存的文件在“xl”文件夹中还有一个名为“theme”的子文件夹,而以前的版本没有,其中包含字体和格式数据之外,我说不出什么。

重要提示:当我从Excel中打开它并使用相同的文件名重新保存它,然后运行这段代码时,它工作得非常好-返回正确的最大行和列值,并正确打印每个单元格值。我尝试在打开工作簿后立即通过OpenPyXL保存它,但这会产生同样的错误结果。

基本上,我需要找到一种方法来正确地提取一个。xlsx文件来自一个。zip文件,以便可以使用OpenPyXL读取。有很多文件需要像这样处理,所以它必须是Excel外部的,并且希望尽可能高效。

干杯

共有1个答案

鄂慈
2023-03-14

听起来这与从zipfile中提取无关,因为如果手动提取文件,也会出现问题。我会尝试将用Excel打开和保存的文件存储在zipfile中,看看会发生什么。如果这样做有效,那么清楚地看到原始的方式。xlsx生成的文件是问题所在。我强烈怀疑是这样的。

如果这是问题所在,请查看是否可以提取。xlsx文件(它们本身就是zipfiles)并将您用Excel保存的文件与原始有问题的文件进行比较。xml不容易比较,因为Excel可以随意重新安排大多数事情,但您可能可以做一些不同的事情。

 类似资料:
  • 我需要帮助在阅读xlsx文件,也使用密码解锁,正如上面所做的。

  • 问题内容: 我需要在Java应用程序中读取Excel 2007 XLSX文件。有谁知道一个很好的API来完成这项任务? 问题答案: AFAIK还没有可用的xlsx库。但是有些旧的xls: 一个库是jxls,它内部使用已经提到的POI。 其他2个链接:处理Excel文件,用于读写Excel XLS文档文件的Java库 。

  • 我正在使用以下命令读取文件: 我在网上尝试了各种解决方案,它们告诉我要排除某些工件,例如:stax-api和stax。但所有的解决办法似乎都不奏效。

  • 我在用图书馆 我在努力 库,但无法将其转换为工作簿 注意:在最终结果中,我希望返回XSSFWorkbook 上面的代码会内存溢出,任何帮助都将提前感谢

  • 问题内容: 我想使用python的Pandas库读取.xlsx文件,并将数据移植到postgreSQL表中。 到目前为止,我所能做的就是: 现在,我知道该步骤已成功执行,但是我想知道如何解析已读取的excel文件,以便可以了解excel中的数据如何映射到变量数据中的数据。 我没弄错,数据就是Dataframe对象。因此,我如何解析此dataframe对象以逐行提取每一行。 问题答案: 我通常会为每

  • 本文向大家介绍Python读取xlsx文件的实现方法,包括了Python读取xlsx文件的实现方法的使用技巧和注意事项,需要的朋友参考一下 脚本如下: 实例:python读取excel数据做分类统计 某excel中记录了某个人的通话记录,下面程序将按照通话地点,通话类型等统计通话时间 再优化下代码 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。