skillfed

pyexcel-ezodf

A Python package to create/manipulate OpenDocumentFormat files

pyexcel-ezodf v0.3.4 112.0K downloads/30d#12,385 on PyPI9
Permissive license MIT Abandoned released

What it is and what it does

Pyexcel-ezodf is a Python library for creating and manipulating OpenDocument Format (ODF) files—the standard format used by LibreOffice and other office suites. It lets you programmatically create new ODF documents (text, spreadsheet, presentation, or drawing files) or open and modify existing ones, adding or editing content like paragraphs, headings, sheets, and cells. The library handles the underlying XML structure and ZIP packaging that ODF files use, so you work with high-level objects instead.

The package is currently in maintenance mode: the original upstream project stopped active development, and pyexcel has taken over caretaker responsibility. The last release was in October 2017 and the last commit in June 2019. It is classified as Alpha software and was tested against Python 2.6 through 3.6, though compatibility with newer Python versions is uncertain. No runtime dependencies are required beyond what the package itself provides.

Use it for:

  • Generate ODS spreadsheets programmatically with data, formulas, and formatting without requiring LibreOffice or Excel installed
  • Create ODT text documents dynamically with headings, paragraphs, and structured content from application data
  • Open and modify existing ODF files to extract data or update content in place
  • Build document templates and populate them with variable data at runtime
  • Convert or migrate data into ODF format for compatibility with office suites

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Create, open, and modify OpenDocument Format (ODF) files—including text documents, spreadsheets, presentations, and drawings—by programmatically adding, editing, or deleting document content.

No. The package is abandoned (last update October 2017, last commit June 2019) and classified as Alpha. While it has no known vulnerabilities and low install friction, its age and uncertain compatibility with modern Python versions make it a poor choice for new projects. Consider actively maintained alternatives for ODF manipulation or use the original upstream ezodf if you need a more recent fork.

Install

pyexcel-ezodf on PyPI

pip

pip install pyexcel-ezodf

uv

uv add pyexcel-ezodf

poetry

poetry add pyexcel-ezodf

Installing pyexcel-ezodf

Before you install

Installation is straightforward with no runtime dependencies, but the package is abandoned—last release was in October 2017 and last commit in June 2019. Pyexcel maintains it as a caretaker during the original maintainer's absence, but no active development is occurring.

License in practice

MIT license is permissive and imposes no significant restrictions on use, modification, or distribution.

Quickstart

pip install pyexcel-ezodf

from ezodf import newdoc, Paragraph, Heading, Sheet

odt = newdoc(doctype='odt', filename='text.odt')
odt.body += Heading("Chapter 1")
odt.body += Paragraph("This is a paragraph.")
odt.save()

ods = newdoc(doctype='ods', filename='spreadsheet.ods')
sheet = Sheet('SHEET', size=(10, 10))
ods.sheets += sheet
sheet['A1'].set_value("cell with text")
ods.save()

Verify before relying

  • Whether lxml is automatically installed as a dependency or must be installed separately
  • Current compatibility with Python versions beyond 3.6
  • Whether the package works reliably with modern versions of lxml

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance abandoned — 3,217 days since the last release
Last repo commit
First released
Downloads 112,013/month — #12,385 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyexcel_ezodf-0.3.4-py2.py3-none-any.whl

Keywords: ODF

Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Topic :: Office/BusinessTopic :: Office/Business :: Office SuitesTopic :: Software Development :: LibrariesTopic :: Utilities

Tags

ODF file creation and editingOpenDocument format manipulationcreate ODS spreadsheet filesmodify ODT text documentsODF document generationspreadsheet and text document libraryopen and save ODF files
odf-documentsoffice-formatsabandoned

More Libraries packages