Replace unicode characters with visually similar ones.
Project description
unicode obfuscate
Replace unicode characters with visually similar ones.
Instalation
Be sure to use python >= 3.7
pip install unicode_obfuscate
Usage
Simple usage:
>>> from unicode_obfuscate import Obfuscator
>>> text = "And Now for Something Completely Different"
>>> obfuscator = Obfuscator()
>>> new_text = obfuscator.obfuscate(text)
>>> new_text
'Αnd Νοw fοr Ѕοmеtһіng Сοmрlеtеlу Dіffеrеnt'
>>> text == new_text
False
# You can also pass a probability to change only some characters.
>>> obfuscator.obfuscate(text, prob=0.3)
'And Νow for Ѕomething Сompletely Different'
There are two different datasets to map the characters:
- intencional: A very short list with very similar characters (Only one option for each character). The data is taken from here.
- confusables: A gigantic list of characters (and multiple possible characters for each one). The data is taken from here.
By default, intencional
is used but it can change with keyword kind
:
# this uses the dataset 'intencional'
>>> obfuscator = Obfuscator()
# this uses the dataset 'confusables'
>>> obfuscator = Obfuscator(kind="confusables")
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
unicode_obfuscate-0.1.1.tar.gz
(39.9 kB
view hashes)
Built Distribution
Close
Hashes for unicode_obfuscate-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d43c0d9035004369ef07e7e2c7fbb939334b40491763057e96aa650bbc38f5b |
|
MD5 | 0d916add2af39abe2202f0542fa5bc3d |
|
BLAKE2b-256 | 98d50f02f87e129c0fe4fa0e6702a23a794135ce01d8e2da1519a9593d24c093 |