โ† Excel (.xlsx) libraries ยท Reader board

markitdown 0.1.9 on Excel (.xlsx)

353 files: text from 286, empty 33, errors 32, hangs 1, crashes 1. 297 files give text to at least one library.

๐Ÿ”ด Fails where another library reads text: 11

49609.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw KeyError with message: "There is no item named '[Content_Types].xml' in (0.074 s)
57914.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw ValueError with message: Sheet name is an empty list (0.09 s)
LIBRE_OFFICE-116306-0.xlsxno result after 60.0 s (60.0 s)
LIBRE_OFFICE-128382-0.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw TypeError with message: expected <class 'openpyxl.styles.fills.Fill'> (0.042 s)
SampleSS.strict.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw ValueError with message: Sheet name is an empty list (0.089 s)
SimpleStrict.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw ValueError with message: Sheet name is an empty list (0.071 s)
clusterfuzz-testcase-minimized-POIXSSFFuzzer-5937385319563264.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw BadZipFile with message: Bad CRC-32 for file 'xl/worksheets/sheet8.xml' (0.143 s)
picture.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw TypeError with message: CellStyle.__init__() got an unexpected keyword (0.069 s)
poc-shared-strings.xlsxworker used more than 3000 MB (22.264 s)
sample.strict.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw ValueError with message: Sheet name is an empty list (0.077 s)
style-alternate-content.xlsxFileConversionException: File conversion failed after 1 attempts: - XlsxConverter threw TypeError with message: <class 'openpyxl.styles.named_styles._NamedCell (0.133 s)

๐ŸŸก Empty where another library reads text: none

Changes between versions

0.1.8 โ†’ 0.1.9: 0 newly failing, 0 fixed

0.1.7 โ†’ 0.1.8: 1 newly failing, 0 fixed

LIBRE_OFFICE-116306-0.xlsxnewly failing

Badge

For a README: badge

[![Reader board](https://img.shields.io/endpoint?url=https://prometheus-maker.github.io/reader-board/badges/xlsx-markitdown.json)](https://prometheus-maker.github.io/reader-board/xlsx-markitdown.html)

Slowest files

65016.xlsx56.816 s, 813 MB
bug62181.xlsx29.473 s, 555 MB
53105.xlsx19.175 s, 235 MB
no_drawing_patriarch.xlsx14.897 s, 392 MB
dataValidationTableRange.xlsx10.607 s, 367 MB
FormulaEvalTestData_Copy.xlsx9.689 s, 354 MB
StructuredRefs-lots-with-lookups.xlsx8.599 s, 298 MB
58896.xlsx6.086 s, 303 MB
46535.xlsx5.909 s, 178 MB
57893-many-merges.xlsx4.737 s, 267 MB

Recipe: board/targets.py. Run: 2026-11-06T16:38:15Z, Python 3.13.18, Linux x86_64, 4 CPUs (log). Installed: beautifulsoup4==4.15.0, certifi==2026.10.23, charset-normalizer==3.5.2, click==8.5.0, defusedxml==0.7.1, et_xmlfile==2.0.0, flatbuffers==25.12.19, idna==3.20, magika==1.0.3, markdownify==1.2.3, markitdown==0.1.9, numpy==2.5.4, onnxruntime==1.31.1, openpyxl==3.1.5, packaging==26.3, pandas==3.1.1, protobuf==7.36.2, python-dateutil==4.0.0, requests==2.34.2, six==1.17.0, soupsieve==4.0.1, typing_extensions==4.16.0, tzdata==2026.6, urllib3==2.8.0