Skip to main content

PyPI Documentation Status CI codecov

PdfHandlerETC

PdfHandlerETC is a lightweight command-line and Python toolkit for handling common PDF tasks including text extraction, encryption, decryption, permissions inspection, word counting, page resizing, and file merging.

This project is released under the CC0 1.0 Public Domain Dedication.

Features

  • Extract text from PDFs by page or range
  • Encrypt and decrypt PDFs with customizable permissions
  • Count words across entire documents or selected pages
  • Inspect encryption status and permissions
  • Resize page dimensions
  • Merge two PDFs with optional visual separators (blank page or black bar)
  • Detect duplicate PDFs based on text content
  • Includes both a Python API and command-line interface (CLI)

Installation

Install from PyPI:

pip install pdfhandleretc

Command-Line Usage

After installation, you can use the pdfhandler CLI tool:

python -m pdfhandler wordcount document.pdf --pages "1, 3" > document_text.txt
python -m pdfhandler encrypt document.pdf --output secure.pdf
python -m pdfhandler decrypt secure.pdf --in-place
python -m pdfhandler permissions secure.pdf
python -m pdfhandler resize document.pdf 612 792 --output resized.pdf
python -m pdfhandler dupe-check file1.pdf file2.pdf
python -m pdfhandler merge intro.pdf appendix.pdf merged.pdf --add-separator black
python -m pdfhandler extract document.pdf --pages "1-3, 5"

Use --help for details:

python -m pdfhandler --help
python -m pdfhandler extract --help

Python Usage

from pdfhandler import PdfHandler

handler = PdfHandler("example.pdf")

# Extract text
text = handler.get_pdf_text("1-2, 4")
print(text)

# Word count
print("Words:", handler.word_count("1-3"))

# Encrypt the file
handler.encrypt(output="example-encrypted.pdf")

# Show permissions
handler.print_permissions()

# Resize pages
handler.resize(width=612, height=792, output_path="resized.pdf")

# Merge with a visual separator (black bar or blank page)
PdfHandler.merge_pdfs(
    "intro.pdf",
    "appendix.pdf",
    "merged.pdf",
    add_separator=True,
    separator_type="black"  # or "blank"
)

License

This project is licensed under the CC0 1.0 Universal public domain dedication. You may use, modify, and distribute it freely without attribution or restriction.

Dependencies

  • pdfminer.six - for text extraction
  • pikepdf - for encryption and PDF manipulation
  • colorama - for cross-platform terminal colors

Metadata

Release files for pdfhandleretc 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pdfhandleretc 0.1.4
File Size Uploaded
pdfhandleretc-0.1.4.tar.gz 14.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pdfhandleretc 0.1.4
File Interpreter ABI Platform
pdfhandleretc-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 29.6 kB

Release files / pdfhandleretc-0.1.4.tar.gz

Download URL pdfhandleretc-0.1.4.tar.gz
Size 14.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ba86576a54a2e04295e7119a33df612145bbead2dc3fa6d3cf0d6f081e19f8fd
BLAKE2b-256 checksum
How to use checksums
28346711d22816035f974ff1848d975bfdbd78e523159910e764aefb529025e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / pdfhandleretc-0.1.4-py3-none-any.whl

Download URL pdfhandleretc-0.1.4-py3-none-any.whl
Size 14.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
37af66d56b8e64960225d8180a55b2cab6c99d50fdcc54b14b1a32ae9813e6cc
BLAKE2b-256 checksum
How to use checksums
7e1b90dcc5059574103eb550c92434a2e9fd51a85fcee51474ec299edf9a0a82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page