Ad removal tool for PDFs written in python.
Project description
Gulag Cleaner
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).
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gulagcleaner-0.8.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 156dbd0053e7e782784d2883614279b0ed390b223044d312a5e768f6276d8f51 |
|
MD5 | 734f7554fde0e86300aecc6cc25a9395 |
|
BLAKE2b-256 | f04b1dea50c7b9d45885d407f22d582280b100f92d72fdffac1b99c0b03fc10e |