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.
This tool can be used without installation directly from our website (in Spanish).
To install Gulag Cleaner, please download and install Python and then run the following command in your terminal:
pip install gulagcleaner
Gulag Cleaner can be used through both a Command Line Interface (CLI) and in your code.
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] [-n] [-h] [-v] <filename>...
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.
- '-n': Force the naive cleaning method.
- '-h': Display the help message, providing information on how to use Gulag Cleaner.
- '-v': Display the current version of Gulag Cleaner.
To use Gulag Cleaner in your code, you can use the following code snippet:
from gulagcleaner.clean import clean_pdf_path
return_msg = clean_pdf_path("input.pdf","output.pdf")
If you are willing to use the Rust distribution of Gulag Cleaner, you can find the instructions in the Rust distribution README.md file.
Gulag Cleaner is distributed under the GPL-3 license, which means it's open-source and free to use.
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.
If you want to help, these are the top priorities right now:
- Find a way to sending the method code to JS in the WASM implementation. Serialization using Serde seems to fail for some reason.
- Add a README.md (With code examples) for the JS (wasm) distribution.