Warum können einige XLSX-Dateien erfolgreich mit openpyxl geöffnet werden, andere jedoch nicht?Python

Python-Programme
Anonymous
 Warum können einige XLSX-Dateien erfolgreich mit openpyxl geöffnet werden, andere jedoch nicht?

Post by Anonymous »

Ich verwende Python 2.7 & openpyxl==2.5.11.

Ich möchte .xlsx-Dateien mit openpyxl lesen. Zuerst habe ich mit Dateien getestet, die von Google Drive heruntergeladen wurden, und alles hat gut funktioniert.

Jetzt habe ich versucht, einige mit Microsoft Excel erstellte Dateien zu laden, aber ich sehe diesen Fehler:

Code: Select all

raise IOError("File contains no valid workbook part")
Ich habe versucht, einige Variablen auszudrucken und selbst herauszufinden, aber mir fehlen tiefergehende Kenntnisse über Excel-Dateien und es gibt einige Abstraktionsebenen, die ich nicht schnell verstehen konnte.

Hier ist der relevante Codeabschnitt, bei dem der Fehler auftritt (

Code: Select all

excel.py
):

Code: Select all

def _find_workbook_part(package):
workbook_types = [XLTM, XLTX, XLSM, XLSX]
for ct in workbook_types:
part = package.find(ct)
if part:
return part

# some applications reassign the default for application/xml
defaults = set((p.ContentType for p in package.Default))
workbook_type = defaults & set(workbook_types)
if workbook_type:
return Override("/" + ARC_WORKBOOK, workbook_type.pop())

raise IOError("File contains no valid workbook part")
Ich habe das Problem sowohl unter OSX als auch unter Ubuntu, falls das relevant ist.

BEARBEITEN:
Ich bin nicht in der Lage, das Problem mit Dateien zu reproduzieren, die ich selbst erstellt habe. Ich denke, das Problem lässt sich nur bei älteren Dateien reproduzieren. Die Leute, die das Problem hatten, verwendeten Excel 2008 oder eine ältere Version zum Erstellen der Dateien. Vielleicht ist das also das Problem?

Vielen Dank im Voraus

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post