# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= python-pypdf VERSION= 6.6.2 KEYWORDS= python VARIANTS= v13 v14 SDESC[v13]= PDF transformation library (3.13) SDESC[v14]= PDF transformation library (3.14) HOMEPAGE= https://github.com/py-pdf/pypdf CONTACT= Python_Automaton[python@ironwolf.systems] DOWNLOAD_GROUPS= main SITES[main]= PYPIWHL/7d/be/549aaf1dfa4ab4aed29b09703d2fb02c4366fc1f05e880948c296c5764b9 DISTFILE[1]= pypdf-6.6.2-py3-none-any.whl:main DIST_SUBDIR= python-src DF_INDEX= 1 SPKGS[v13]= single SPKGS[v14]= single OPTIONS_AVAILABLE= PY313 PY314 OPTIONS_STANDARD= none VOPTS[v13]= PY313=ON PY314=OFF VOPTS[v14]= PY313=OFF PY314=ON DISTNAME= pypdf-6.6.2.dist-info GENERATED= yes [PY313].USES_ON= python:v13,wheel [PY314].USES_ON= python:v14,wheel [FILE:2486:descriptions/desc.single] [PyPI version] [Python Support] [![]](https://pypdf.readthedocs.io/en/stable/) [GitHub last commit] [codecov] # 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] for a CLI application that uses pypdf to interact with PDFs. ## Installation Install pypdf using pip: ` pip install pypdf ` For using pypdf with AES encryption or decryption, install extra dependencies: ``` pip install pypdf[crypto] ``` > **NOTE**: `pypdf` 3.1.0 and above include significant improvements compared to > previous versions. Please refer to [the migration > guide] for > more information. ## Usage ```python from pypdf import PdfReader reader = PdfReader("example.pdf") number_of_pages = len(reader.pages) page = reader.pages[0] text = page.extract_text() ``` pypdf can do a lot more, e.g. splitting, merging, reading and creating annotations, decrypting and encrypting. Check out the [documentation] for additional usage examples! For questions and answers, visit [StackOverflow] (tagged with [pypdf]). ## Contributions Maintaining pypdf is a collaborative effort. You can support the project by writing documentation, helping to narrow down issues, and submitting code. See the [CONTRIBUTING.md] file for more information. ### Q&A The experience pypdf users have covers the whole range from beginner to expert. You can contribute to the pypdf community by answering questions on [StackOverflow], helping in [discussions], and asking users who report issues for [MCVE]'s (Code + example PDF!). ### Issues A good bug ticket includes a MCVE - a minimal complete verifiable example. For pypdf, this means that you must upload a PDF that causes the bug to occur as well as the code you're executing with all of the output. Use `print(pypdf.__version__)` to tell us which version you're using. ### Code All code contributions are welcome, but smaller ones have a better chance to get included in a timely manner. Adding unit tests for new features or test cases for bugs you've fixed help us to ensure that the Pull Request (PR) is fine. pypdf includes a test suite which can be executed with `pytest`: ```bash $ pytest ===================== test session starts ===================== platform linux -- Python 3.6.15, pytest-7.0.1, pluggy-1.0.0 [FILE:118:distinfo] 44c0c9811cfb3b83b28f1c3d054531d5b8b81abaedee0d8cb403650d023832ba 329132 python-src/pypdf-6.6.2-py3-none-any.whl