Aspose.Words FOSS for Python is a MIT-licensed Python library for loading and converting Word documents. It reads DOCX, DOC, RTF, TXT, and Markdown files and exports them to PDF, Markdown, and plain text without requiring Microsoft Office or any proprietary runtime.
The library provides a Document class for loading files and a save() method that accepts SaveFormat constants or save-options objects like PdfSaveOptions and MarkdownSaveOptions for fine-grained output control.
Install with pip install aspose-words-foss>=26.4.0. The library requires Python 3.10 or later and depends on olefile, fpdf2, and pydantic. It is MIT-licensed and fully open-source on GitHub.
Document class.SaveFormat.PDF or PdfSaveOptions.SaveFormat.MARKDOWN or MarkdownSaveOptions.Document.get_text().SaveFormat.TEXT.SaveFormat.MARKDOWN, SaveFormat.PDF, and SaveFormat.TEXT for quick conversion.Aspose.Words FOSS installs with pip install aspose-words-foss. Runtime dependencies (olefile, fpdf2, pydantic) are installed automatically.
The API is straightforward: load a Document from a file path, then call save() with a target path and format. For advanced control, pass a save-options object instead of a format constant. The library is MIT-licensed, open-source on GitHub, and requires Python 3.10 or later.
Load a Word document and save it as Markdown in two lines of code.
import aspose.words_foss as aw
doc = aw.Document("input.docx") # or .doc, .rtf, .txt, .md
doc.save("output.md", aw.SaveFormat.MARKDOWN)
Export a Word document to PDF format.
import aspose.words_foss as aw
doc = aw.Document("input.docx")
doc.save("output.pdf", aw.SaveFormat.PDF)
Read all text content from a Word document.
import aspose.words_foss as aw
doc = aw.Document("input.docx")
text = doc.get_text()
Aspose.Words FOSS for Python is released under the MIT license. You can use, modify, and distribute it in commercial and personal projects.
Install via pip with pip install aspose-words-foss>=26.4.0. Requires Python 3.10 or later.
The library reads DOCX, DOC, RTF, TXT, and Markdown files and exports to PDF, Markdown, and plain text.
Load with Document("input.docx") and call doc.save("output.pdf", SaveFormat.PDF).