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