pypdf
A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files
Install
pypdf on PyPI
pip
pip install pypdfuv
uv add pypdfpoetry
poetry add pypdfPackage facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — typing_extensions |
| Maintenance | actively maintained — 0 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: pypdf-6.16.0-py3-none-any.whl
About pypdf
from the package's own PyPI description — quoted content, verbatim
PyPI version (image) Python Support (image) https://img.shields.io/badge/-documentation-green (image) GitHub last commit (image) codecov (image)
pypdf
pypdf is a free and open-source pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. It can also add custom data, viewing options, and passwords to PDF files. pypdf can retrieve text and metadata from PDFs as well.
See pdfly...
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
pypdf is a pure-Python library for reading, splitting, merging, cropping, and transforming PDF files, plus extracting text, metadata, and managing encryption.
Low friction: single lightweight runtime dependency (typing_extensions), pure-Python wheel distribution, and active maintenance with a recent release.
BSD-3-Clause is permissive; you may use, modify, and distribute pypdf freely in commercial and private projects provided you include the license notice.
Usage
pip install pypdf
from pypdf import PdfReader
reader = PdfReader("example.pdf")
text = reader.pages[0].extract_text()
Requires Python 3.9 or later; for AES encryption/decryption, install with `pip install pypdf[crypto]`.
Verdict: pypdf is a mature, actively maintained, permissively licensed PDF toolkit with no known vulnerabilities, minimal dependencies, and strong community adoption (top 1000 PyPI). It is production-ready for standard PDF operations.
Needs verification
- Whether the optional [crypto] extra adds significant install friction or introduces security considerations.
- Performance characteristics and memory footprint for large or complex PDF files.
- Specific Python 3.14 compatibility status given it is listed in classifiers but may be pre-release.
Similar packages
permissive · top 1,000 on PyPI
rsapermissive · top 1,000 on PyPI
pymongopermissive · top 1,000 on PyPI
pdfminer.sixpermissive · top 1,000 on PyPI
pdfplumberpermissive · top 1,000 on PyPI
oscryptopermissive · top 1,000 on PyPI
PyMySQLpermissive · top 1,000 on PyPI
pandaspermissive · top 100 on PyPI
networkxpermissive · top 1,000 on PyPI
pymupdfagpl · top 1,000 on PyPI