A simple Python CLI tool to encode or decode URLs/payloads using quote_plus and unquote_plus from Python's urllib.parse. Supports multi-layer encoding/decoding, and also provides a full recursive decode option.
- Encode or decode a payload
ntimes - Automatically detect and fully decode deeply nested encodings
- CLI and interactive modes
- Lightweight, no external dependencies except
pyinputplusandpyperclip - Automatically copy result payload to clipboard
- Clone the repository
git clone https://github.com/occupythemind/URL_encoder/.git
cd URL_encoder/- Install dependencies
pip install pyinputplus pyperclipCommand-line
python3 burl.py -p [payload] -m [encode|decode] -n [optional layer count]Examples
Encode once
python3 burl.py -p "admin/dashboard" -m encodeEncode 3 times
python3 burl.py -p "admin/dashboard" -m encode -n 3Decode once
python3 burl.py -p "%252Fadmin" -m decode -n 1Full decode (no -n needed)
python3 burl.py -p "%252Fadmin" -m decodepython3 burl.py -hUSAGE: python3 burl.py -p [payload] -m [encode/decode] -n [optional]
where:
-p Specifies the payload to be encoded or decoded.
-m Specifies the mode. Either encode or decode.
-n Specifies the number of times to encode or decode. Default is 1.
But in the case of decoding, if omitted, full decode will be applied.
If you omit -p or -m, the tool will prompt you interactively using pyinputplus.
MIT β free to use, modify, and share.