GroupDocs.Conversion for Python via .NET - Document conversion API supporting 10,000+ format combinations
Project description
Product Page | Docs | Demos | API Reference | Blog | Free Support | Temporary License
GroupDocs.Conversion for Python via .NET is a document conversion API that lets you easily convert the most popular file formats, including DOCX, XLSX, PPTX, PDF, CAD drawings, and many more. It preserves layout and formatting while offering customization options for each format.
Get Started
pip install groupdocs-conversion-net
from groupdocs.conversion import Converter
from groupdocs.conversion.options.convert import PdfConvertOptions
with Converter("document.docx") as converter:
converter.convert("output.pdf", PdfConvertOptions())
How It Works
The package is a self-contained Python wheel (~200 MB) that includes everything needed to process documents. No external software installation is required - just pip install and start converting. The wheel works across Python 3.5 - 3.14 on Windows, Linux, and macOS (Intel + Apple Silicon).
Features
- Wide Format Support: Over 10,000 conversion pairs across Microsoft Office, PDF, HTML, images, CAD, and more.
- Flexible Options: Convert entire documents, specific pages, page ranges, or files within archives.
- Format Detection: Automatically detects input file format.
- No External Dependencies: No Microsoft Office or other software required.
- Cross-Platform: Windows x64/x86, Linux x64, macOS x64/ARM64.
Supported File Formats
For a complete list, see supported formats.
- Microsoft Office (Word, Excel, PowerPoint)
- PDF (Standard PDFs, PDF/A)
- OpenDocument (ODT, ODS, ODP)
- Images (JPEG, PNG, TIFF, BMP, SVG, WebP)
- Email (EML, MSG)
- eBook (EPUB, MOBI)
- Text/Markup (TXT, MD, HTML, MHTML)
- AutoCAD (DWG, DXF)
Examples
Convert DOCX to PDF
from groupdocs.conversion import Converter
from groupdocs.conversion.options.convert import PdfConvertOptions
with Converter("./business-plan.docx") as converter:
converter.convert("./business-plan.pdf", PdfConvertOptions())
Convert with Advanced Options
from groupdocs.conversion import Converter
from groupdocs.conversion.options.convert import PdfConvertOptions
from groupdocs.conversion.options.load import WordProcessingLoadOptions
load_options = WordProcessingLoadOptions()
load_options.password = "12345"
with Converter("./protected.docx", load_options) as converter:
options = PdfConvertOptions()
options.dpi = 300
options.page_number = 1
options.pages_count = 2
converter.convert("./output.pdf", options)
Get Document Info
from groupdocs.conversion import Converter
with Converter("./document.pdf") as converter:
info = converter.get_document_info()
print(f"Pages: {info.pages_count}")
Convert from Stream / BytesIO
import io
from groupdocs.conversion import Converter
from groupdocs.conversion.options.convert import PdfConvertOptions
with open("document.docx", "rb") as stream:
with Converter(stream) as converter:
converter.convert("output.pdf", PdfConvertOptions())
buf = io.BytesIO(downloaded_bytes)
with Converter(buf) as converter:
converter.convert("output.pdf", PdfConvertOptions())
AI Agent & LLM Friendly
This package is designed for seamless integration with AI agents, LLMs, and automated code generation tools.
AGENTS.mdin the package — AI coding assistants (Claude Code, Cursor, GitHub Copilot) auto-discover the API surface, usage patterns, and troubleshooting tips from the installed package- MCP server — connect your AI tool to GroupDocs documentation for on-demand API lookups:
{ "mcpServers": { "groupdocs-docs": { "url": "https://docs.groupdocs.com/mcp" } } }
- Machine-readable docs — full documentation available as plain text for RAG and LLM context:
- Single file:
https://docs.groupdocs.com/conversion/python-net/llms-full.txt - Per page: append
.mdto any docs URL
- Single file:
Evaluation Mode
The API works without a license in evaluation mode with the following limitations:
- A watermark is added to output documents.
- Only the first 3 pages are processed.
To remove these limitations, apply a license or request a temporary license:
from groupdocs.conversion import License
License().set_license("path/to/license.lic")
Or set the environment variable (auto-applied at import):
export GROUPDOCS_LIC_PATH="path/to/license.lic"
Troubleshooting
| Issue | Platform | Fix |
|---|---|---|
System.Drawing.Common is not supported |
Linux/macOS | apt-get install libgdiplus (Linux) or brew install mono-libgdiplus (macOS) |
| Garbled text or missing fonts in PDF | Linux | apt-get install ttf-mscorefonts-installer fontconfig && fc-cache -f |
The type initializer for 'Gdip' threw an exception |
macOS | brew install mono-libgdiplus |
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT errors |
Linux | Do NOT set this variable. ICU must be available. |
System Requirements
- Python 3.5 - 3.14
- Windows x64/x86, Linux x64, macOS x64/ARM64
More Resources
Also available for other platforms: .NET | Java | Node.js
Product Page | Docs | Demos | API Reference | Blog | Free Support | Temporary License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file groupdocs_conversion_net-26.3.0-py3-none-win_amd64.whl.
File metadata
- Download URL: groupdocs_conversion_net-26.3.0-py3-none-win_amd64.whl
- Upload date:
- Size: 201.5 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e03e4806a0490cc6b11855ce3c6ece17b2b93e25daa7bfa1d74c0fecd8bcac81
|
|
| MD5 |
7afaac6d34af4106e8d189dbd1f2a2c8
|
|
| BLAKE2b-256 |
d990ec60726c8822728bee9c44f9cda7e368484b31837ed1f039f5162ebdf2aa
|
File details
Details for the file groupdocs_conversion_net-26.3.0-py3-none-manylinux1_x86_64.whl.
File metadata
- Download URL: groupdocs_conversion_net-26.3.0-py3-none-manylinux1_x86_64.whl
- Upload date:
- Size: 200.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5dd3d6942a2f211562f58a1a52ae7bc8467ccaf5fd0991d2db545b5d076b1c5d
|
|
| MD5 |
62dc0a9c83b51cfec91c2e01d1cb9988
|
|
| BLAKE2b-256 |
33360ea14af5c44db4ebceb0fd348507a6a9f8d392656847096870d688d39235
|
File details
Details for the file groupdocs_conversion_net-26.3.0-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: groupdocs_conversion_net-26.3.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 199.9 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d97cc0d5536cd16edc23bd35797e6914f564fe1cdb970d1c890ae5e4173a39f7
|
|
| MD5 |
7517af202def5a15b604a0afaeb4a9a1
|
|
| BLAKE2b-256 |
b07ae33fe17f9b2df274ab3b93e429a1289ebd6e27c93b2127bff054fe40a4c2
|
File details
Details for the file groupdocs_conversion_net-26.3.0-py3-none-macosx_10_14_x86_64.whl.
File metadata
- Download URL: groupdocs_conversion_net-26.3.0-py3-none-macosx_10_14_x86_64.whl
- Upload date:
- Size: 202.1 MB
- Tags: Python 3, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc4593bb3cd9520714bd80909548beabf701e8340ea3430cb465a07da13bd19c
|
|
| MD5 |
b058e10c63788e33e87b0743b52a995e
|
|
| BLAKE2b-256 |
645fdf27f87c6236d3663e8e44f54961244365f17778aa68df0460282d5166fb
|