Skip to main content

Ad removal tool for PDFs written in python.

Project description

Gulag Cleaner

Twitter Instagram Ko-fi

Gulag Cleaner is a tool designed to remove advertisements from PDFs, making it easier to read and navigate documents without being disrupted by unwanted ads.

This tool does not just crop the ads out of the PDF, instead, we extract the original file without ads by manipulating the internal structure of the PDF, ensuring maximum quality.

In addition to removing advertisements, Gulag Cleaner is also capable of extracting metadata, such as the author, subject, university, and more, from the file.

Web Version

This tool can be used without installation directly from our website (in Spanish).

Gulag Cleaner webpage

Installation

To install Gulag Cleaner, please download and install Python and then run the following command in your terminal:

pip install gulagcleaner

Usage

Gulag Cleaner can be used through both a Command Line Interface (CLI) and in your code.

Command Line Interface

To use Gulag Cleaner through the CLI, simply run the following command, replacing <filename> with the name of one or more PDF files or folders containing PDF:

gulagcleaner [-r] [-s] [-h] [-v] <filename>...

Options

Gulag Cleaner provides several options for its usage:

  • '-r': Replace the original file with the cleaned version.
  • '-s': Do not show metadata about cleaned files.
  • '-h': Display the help message, providing information on how to use Gulag Cleaner.
  • '-v': Display the current version of Gulag Cleaner.

Code

To use Gulag Cleaner in your code, you can use the following code snippet:

from gulagcleaner.extract import clean_pdf

return_msg = clean_pdf("file.pdf")

License

Gulag Cleaner is distributed under the GPL-3 license, which means it's open-source and free to use.

Contributing

We're always looking for ways to improve Gulag Cleaner, and we welcome contributions from the community. If you have ideas for improvements or bug fixes, please feel free to submit a pull request.

TODO

If you want to help, these are the top priorities right now:

  • Revamp the argument parsing. We should use some parsing library to allow for short "-v" and long "--version" arguments. Idealy it should support parameters for each argument.

  • Add the "Naive" cleaning method. This method is just a fallback that crops the Ads by zooming in and moving the MediaBox. This is not ideal, but there will always be edge cases not covered in the other methods and doing this better than giving an error.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gulagcleaner-0.8.2.tar.gz (30.5 kB view hashes)

Uploaded Source

Built Distribution

gulagcleaner-0.8.2-py3-none-any.whl (31.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page