We’re happy to announce the release of GroupDocs.Editor for Python v26.5, available as of May 2026. This is the first public release of GroupDocs.Editor for Python via .NET, shipped as a self‑contained Python wheel on PyPI. It brings the full document‑editing capabilities of the underlying .NET library to Python: load a document, convert it to clean, editable HTML/CSS, edit that markup programmatically or in any WYSIWYG editor, then save it back to the original format — or convert it to another — with a single pip install and no MS Office, OpenOffice, or separate .NET runtime required.

What’s new in this release

  • [New feature] HTML round‑trip editing (EDTPY-1)
  • [New feature] Pythonic API surface with auto‑mapped naming conventions (EDTPY-2)
  • [New feature] Multi‑format support across Word processing, spreadsheets, presentations, PDF, email, eBooks, and text/markup formats (EDTPY-3)
  • [New feature] Format conversion via HTML intermediate (EDTPY-4)
  • [New feature] Granular editing (worksheet/slide/page range) with pagination and language metadata toggles (EDTPY-5)
  • [New feature] Resource extraction (images, fonts, CSS, audio) and folder persistence (EDTPY-6)
  • [New feature] Document introspection via get_document_info() (EDTPY-7)
  • [New feature] Form field inspection and update via editor.form_field_manager (EDTPY-8)
  • [New feature] Stream loading and context‑manager protocol for deterministic disposal (EDTPY-9)
  • [New feature] AI Agent & LLM Friendly: bundled AGENTS.md, MCP server, and machine‑readable docs (EDTPY-10)

Public API changes

The entire .NET API is exposed through Python‑native naming. Classes use PascalCase, methods and properties use snake_case (auto‑mapped to the underlying .NET PascalCase), and enum values use UPPER_SNAKE_CASE.

Classes

  • Editor — entry point; open by path or stream, edit(), save(), get_document_info(), form_field_manager
  • EditableDocument — HTML/CSS representation; get_content(), get_body_content(), get_embedded_html(), get_css_content(), save(), resource collections (images, fonts, css, audio, all_resources), and the from_markup() / from_markup_and_resource_folder() / from_file() factories
  • FormFieldManager — read and update Word‑processing form fields
  • License, Metered — licensing APIs

Options

  • Load: WordProcessingLoadOptions, SpreadsheetLoadOptions, PresentationLoadOptions, PdfLoadOptions
  • Edit: WordProcessingEditOptions, SpreadsheetEditOptions, PresentationEditOptions, PdfEditOptions, EbookEditOptions, EmailEditOptions, MarkdownEditOptions, TextEditOptions, XmlEditOptions, DelimitedTextEditOptions
  • Save: WordProcessingSaveOptions, SpreadsheetSaveOptions, PresentationSaveOptions, PdfSaveOptions, HtmlSaveOptions, MhtmlSaveOptions, MarkdownSaveOptions, XpsSaveOptions, TextSaveOptions, EbookSaveOptions, EmailSaveOptions, DelimitedTextSaveOptions

Enums

  • WordProcessingFormats, SpreadsheetFormats, PresentationFormats, FixedLayoutFormats, EBookFormats, EmailFormats, TextualFormats, FontExtractionOptions, FontEmbeddingOptions

Exceptions

  • PasswordRequiredException, IncorrectPasswordException, EncryptedException, InvalidFormatException

New features

HTML Round‑Trip Editing

Convert any supported document to editable HTML/CSS and save it back to its original format without losing fidelity — the core workflow behind GroupDocs.Editor. The HTML can be edited programmatically or in any third‑party WYSIWYG editor such as CKEditor or TinyMCE.

Pythonic API Surface

The entire .NET API is exposed through Python‑native naming. Classes use PascalCase, methods and properties use snake_case (auto‑mapped to the underlying .NET PascalCase), and enum values use UPPER_SNAKE_CASE.

Multi‑Format Support

One unified API across Word processing, spreadsheets, presentations, PDF, email, eBooks, and text/markup formats.

Format Conversion via HTML

There is no separate “convert” call — saving an EditableDocument with a different *SaveOptions converts it through the HTML intermediate. Same input, different output.

Granular Editing

Edit a single worksheet of a workbook, a single slide of a deck, or a page range — and toggle pagination and language metadata.

Resource Extraction

An EditableDocument exposes its extracted images, fonts, CSS, and audio as iterable collections, and can persist the HTML plus all resources into a folder.

Document Introspection

Read format, page count, size, and encryption status without a full edit pass.

Form Fields

Inspect and update Word‑processing form fields through editor.form_field_manager.

Streams and Context Managers

Load from any binary stream and rely on the context‑manager protocol for deterministic disposal of native document handles.

AI Agent & LLM Friendly

  • AGENTS.md bundled inside the installed wheel — Claude Code, Cursor, and GitHub Copilot auto‑discover the API surface, usage patterns, and troubleshooting hints.
  • MCP server — point your AI tool at https://docs.groupdocs.com/mcp for on‑demand documentation lookups.
  • Machine‑readable docs at https://docs.groupdocs.com/editor/python-net/llms-full.txt for RAG and LLM context.

Code example

from groupdocs.editor import Editor, EditableDocument
from groupdocs.editor.formats import WordProcessingFormats
from groupdocs.editor.options import WordProcessingSaveOptions

with Editor("document.docx") as editor:
    editable = editor.edit()                       # document -> editable HTML
    html = editable.get_embedded_html()
    edited = EditableDocument.from_markup(html.replace("Hello", "Goodbye"))
    editor.save(edited, "document.docx", WordProcessingSaveOptions(WordProcessingFormats.DOCX))

How to get the update

PyPI

Install or upgrade via:

pip install groupdocs-editor-net

Direct download

Download the wheel from the GroupDocs.Editor for Python via .NET 26.5 page.

Resources