PyMuPDF is a high performance Python library for data extraction, analysis, conversion & manipulation of PDF (and other) documents.
PyMuPDF requires Python 3.8 or later, install using pip with:
pip install PyMuPDF
There are no mandatory external dependencies. However, some optional features become available only if additional packages are installed.
You can also try without installing by visiting PyMuPDF.io.
Basic usage is as follows:
import fitz # imports the pymupdf library
doc = fitz.open("example.pdf") # open a document
for page in doc: # iterate the document pages
text = page.get_text() # get plain text encoded as UTF-8
Full documentation can be found on pymupdf.readthedocs.io.
- fontTools for creating font subsets.
- pymupdf-fonts contains some nice fonts for your text output.
- Tesseract-OCR for optical character recognition in images and document pages.
PyMuPDF adds Python bindings and abstractions to MuPDF, a lightweight PDF, XPS, and eBook viewer, renderer, and toolkit. Both PyMuPDF and MuPDF are maintained and developed by Artifex Software, Inc.
PyMuPDF was originally written by Jorj X. McKie.
PyMuPDF is available under open-source AGPL and commercial license agreements. If you determine you cannot meet the requirements of the AGPL, please contact Artifex for more information regarding a commercial license.
Join us on Discord here: #pymupdf