A Pure-Python library built as a PDF toolkit. It is capable of:
- extracting document information (title, author, …),
- splitting documents page by page,
- merging documents page by page,
- cropping pages,
- merging multiple pages into a single page,
- encrypting and decrypting PDF files.
By being Pure-Python, it should run on any Python platform without any dependencies on external libraries. It can also work entirely on StringIO objects rather than file streams, allowing for PDF manipulation in memory. It is therefore a useful tool for websites that manage or manipulate PDFs.
PyPDF2 currently works best with Python versions 2.5 - 2.7, though we’re working to make it fully compatible with Python 3+